我的代碼與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