从未启用的按钮切换到已启用的按钮

时间:2018-10-06 15:06:08

标签: java android

我正在尝试开发一个简单的“ tris游戏”(用户与计算机)。 在这种情况下,应用程序将显示由9个按钮组成的网格,并且一旦单击它们便会着色。 实际上,我发现一些描述“计算机行为”的麻烦,特别是当计算机选择已经单击的按钮时,我找不到一种处理方法。这是一段代码:

switch (position.get(i)){

                case 1:
                    if (button11.isEnabled()) {

                        button11.setEnabled(false);
                        button11.setBackgroundColor(Color.RED);
                    }else{


                    }
                    break;

                case 2:
                    if (button12.isEnabled()) {

                        button12.setEnabled(false);
                        button12.setBackgroundColor(Color.RED);
                    }
                    break;

在这里,变量“位置”是一个包含按钮位置的列表,然后通过开关控制选中的按钮已启用,并且在某些情况下,它可以使按钮变色且永远不可单击。 现在,我试图在“ else”部分中获取一些代码,以防按钮不可单击(例如,用户之前已经单击了它)。 我在想是否有办法从案例1转移到案例2,依此类推,直到 我发现仍然可以单击一个按钮。有什么建议么?

1 个答案:

答案 0 :(得分:0)

您可以创建一个ArrayList并将按钮放在其中,然后在循环内执行测试。

示例:

 ArrayList<Button> buttonList= new ArrayList<Button>();
 //put your buttons inside the list in order : buttonList.add(button0);...


for(int i=0;i<position.size();i++){

if(buttonsList.get(i).isEnabled()){
                      buttonList.get(i).setEnabled(false);
                      buttonList.get(i).setBackgroundColor(Color.RED);
             }
  }