好吧,所以我试图将我正在为一个项目开发的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);

最佳答案

您可以创建ArrayList类型的Button

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);

关于java - 更改点击时所有按钮的背景,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32956354/

10-10 23:11