2012-02-21 123 views
0

我有点怀疑当我点击第二次图像按钮时,我想同时更改两个按钮图像视图。当第二次点击按钮发生时如何更改指定先前点击的图像按钮视图

示例: 1.首次按下按钮1并且已经改变了第一次图像视图。 (获得工作) 2.第二次按下另一个按钮2,我想同时为按钮1和按钮2两者更改图像视图。但我只能得到ibutton作为可变信号来改变按钮2图像视图,而按钮1无法获得。

问题: 1.当点击按钮2时,如何更改按钮1的按钮图像视图? 2.我该如何保持数组中的按钮变量?

我这样的代码:

public class CheckersTest extends Activity { 

    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.welcome); 

     final ImageView iv_new_game = (ImageView) findViewById(R.id.new_game); 
     iv_new_game.setOnClickListener(welcome_listener); 
    } 

    OnClickListener welcome_listener = new View.OnClickListener() { 

     public void onClick(View v) { 
      final ImageView iv = (ImageView) v; 
      if (iv.getId() == R.id.new_game) { 
       setContentView(R.layout.checkers_board); 

      final ImageButton b2 = (ImageButton) findViewById(R.id.imageButton2); 
      final ImageButton b4 = (ImageButton) findViewById(R.id.imageButton4); 
      final ImageButton b6 = (ImageButton) findViewById(R.id.imageButton6); 

// set the OnClickListeners. 

       b2.setOnClickListener(button_listener); 
       b4.setOnClickListener(button_listener); 
       b6.setOnClickListener(button_listener); 

// Re-enable the Click-able property of buttons. 

       b2.setClickable(true); 
       b4.setClickable(true); 
       b6.setClickable(true); 
       } 
     }; 
    }; 


OnClickListener button_listener = new View.OnClickListener() { 

     public void onClick(View v) { 
      ImageButton ibutton = (ImageButton) v; 

     ibutton.setImageResource(R.drawable.green_bol); 

     } 
}; 

回答

0

在第二个按钮的onclick方法获得第一个按钮,设置图像的实例。

+0

感谢您的回复。当我第二次来时点击按钮2,按钮1信号我不能改变图像按钮1. – user985320 2012-02-21 12:40:56

+0

在上面的代码中,你正在使用相同的所有按钮ONCLICK LISTENER – Rakshi 2012-02-21 12:45:57

+0

所以,意味着我有创建另一个类似OnClickListener?有保持数组中第一次单击ibutton变量的方法?那么我可以用它来操作图像视图。谢谢你... – user985320 2012-02-21 12:49:26