我的代码与if语句一起工作,直到做出10个动作为止,然后检查获胜者是否在getWinner()中,但是这是一个问题,进行了10次移动。在游戏结束前检查“获胜者”
我最初只是getWinner();没有if语句的方法假设这会在每次单击按钮时检查赢家。这并没有给我任何错误,但它只是无法正常工作。
我还能试试吗?为什么只添加getWinner();没有if语句不起作用?
public class MainActivity extends AppCompatActivity {
public int counter = 1;
private Button button1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button1 = (Button) findViewById(R.id.button1);
//对于所有按钮都重复这个操作,为了缩短文章的原因,我将其全部留出。
button1.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
if (button1.getText().toString().equals("")) {
if (counter % 2 == 0) {
button1.setText("O");
} else {
button1.setText("X");
}
counter++;
}
if (counter == 10) {
getWinner();
}
}
});
//add the other buttons here...
public void getWinner() {
String b1, b2, b3, b4, b5, b6, b7, b8, b9;
b1 = button1.getText().toString();
// code here
}
我已经低估了这个问题,因为这里的代码太多了。为了清楚地说明问题的具体位置,请删除不直接导致问题的任何代码,如果可以将其减少到十行或更少,我会考虑收回downvote。请参阅:[如何创建最小,完整和可验证示例](http://stackoverflow.com/help/mcve) –
我没有收到错误,因此我不知道它在哪里。不确定其逻辑或将方法放在错误的地方。现在我已经混淆了一段代码。我分手了,但由于这不够好,你继续前进,并保持你的失望。 – Chris
了解如何使用调试器。除去if语句,在分配字符串后在getWinner()函数中放置一个断点,然后检查每个变量的内容。 – rguessford