2012-02-21 164 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