2015-10-05 105 views
1

好吧,我正在試圖爲我正在爲一個項目工作的tictactoe遊戲設計風格。當我按新遊戲時,我想要某種數組將每個Button的背景改變爲一種顏色。然後,當用戶點擊一個按鈕使其移動到那裏時,該空間將根據玩家的不同而改變爲不同的顏色(我有一個PlayerTurn標誌變量來決定這一點)。我還想根據與該按鈕相對應的索引在int數組中的值。我怎樣才能給每個按鈕分配一個數值,我以後可以用它來索引到我的數組中?更改背景上的所有按鈕點擊

這是我目前使用的代碼。

Button buttons[] = new Button[9]; 
    buttons[0] = (Button) findViewById(R.id.button0); 
    buttons[1] = (Button) findViewById(R.id.button1); 
    buttons[2] = (Button) findViewById(R.id.button2); 
    buttons[3] = (Button) findViewById(R.id.button3); 
    buttons[4] = (Button) findViewById(R.id.button4); 
    buttons[5] = (Button) findViewById(R.id.button5); 
    buttons[6] = (Button) findViewById(R.id.button6); 
    buttons[7] = (Button) findViewById(R.id.button7); 
    buttons[8] = (Button) findViewById(R.id.button8); 

回答

0

您可以創建類型ButtonArrayList

private ArrayList<Button> mList; 

onCreate()// 
mList = new ArrayList<>(); 
mList.add(yourButton); 
..................... 

for(int i = 0 ; i< mList.size(); i++) 
    mList.get(i).setBackground(//your color); 
+0

好了,我怎麼能那麼要確保,當我點擊,要說中間的按鈕,只有該按鈕改變顏色。 – Jrawr

+0

我編輯了我的原始文章以顯示我正在使用的代碼。我不熟悉Arraylist或者他們與Arrays不同。 – Jrawr

+0

你需要使用OnClickListener每個項目 – Lazai