为什么此onClick方法是递归的?

时间:2018-07-26 08:03:11

标签: java android

我只是想当用户单击任何按钮时,计算机将按下另一个按钮,然后轮到用户并重复该循环。

<%= image_tag(@food.image) %>

由于!player_turn命令,此方法正在重复自身

// This section intialises the buttons
for (int i = 0; i < 3; i++) {
    for (int j = 0; j < 3; j++) {
        String buttonid = "button_" + i + j;
        int resId = getResources().getIdentifier(buttonid, "id", 
                                                 getPackageName());
        buttons[i][j] = findViewById(resId);
        buttons[i][j].setOnClickListener(this);

    }
}

1 个答案:

答案 0 :(得分:0)

我认为您的onClick方法应该

public void onClick(View v) {
        if (player_turn) {
            if (((Button) v).getText().toString().equals("")) {

                ((Button) v).setText("X");
                dohandler(computermakemove());
                player_turn = !player_turn;
            }
        } else {
            player_turn = !player_turn;
        }
    }