Hoping to change widget attributes by selecting a menu item

by midicool » Thu, 05 Mar 2009 11:47:18 GMT


Sponsored Links
 Hi,

I am writing a program that involves a menu. Once you press the menu
button
and then select "Left",  it's supposed to change the attributes of
myButton12, an ImageButton.

However, I am getting a "myButton12 cannot be resolved" error message.
Please help me figure out what is wrong with this code.

Thanks!
-Jimmy



The code:

package com.innodesign.testingbuttons;

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.AbsoluteLayout;
import android.widget.ImageButton;
import android.widget.Button;
import android.widget.EditText;
import android.net.Uri;
import android.content.Intent;

@SuppressWarnings("unused")
public class TestingButtons extends Activity {
       protected void onCreate(Bundle icicle) {
               super.onCreate(icicle);
               setContentView(R.layout.main);

               final ImageButton myButton12 = (ImageButton)
findViewById
(R.id.btid12);
               myButton12.setOnClickListener(new View.OnClickListener
()
{
               public void onClick(View v) {
               // Perform action on click
                       phoneNumber.setText(phoneNumber.getText()+"#");
                       }
               });
       }

   @Override
   public boolean onCreateOptionsMenu(Menu menu){
       super.onCreateOptionsMenu(menu);

               menu.add(0, 1, 0, "Left");
               menu.add(0, 2, 0, "Right");
   return true;
   }

       @Override
       public boolean onOptionsItemSelected(MenuItem item){
               switch(item.getItemId()){
               case 1:
                       shiftLeft();
               return true;
               case 2:
               return true;
               }
       return true;
       }

       public void shiftLeft(){
               myButton12.setLayoutParams(new
AbsoluteLayout.LayoutParams(10, 10,
10, 10));

       }
}

--~--~---------~--~----~------------~-------~--~----~



Hoping to change widget attributes by selecting a menu item

by Jesse McGrew » Thu, 05 Mar 2009 13:14:11 GMT


 


You've defined myButton12 as a local variable for the onCreate()
method. It doesn't exist in shiftLeft(), so you're getting that error
message.

Define myButton12 as a field of your activity class instead so it can
be used from the other methods:

  public class TestingButtons extends Activity {
      private ImageButton myButton12;
      /* ... */

Then remove the words "final ImageButton" from the line in onCreate()
where you assign to myButton12.

Jesse
--~--~---------~--~----~------------~-------~--~----~


Sponsored Links