我试图按两次按钮。为此,我尝试插入循环然后禁用,这样玩家就不能再按下该按钮了。我不明白为什么我只能按一下按钮(显示卡片),然后代码就会停止,循环也不起作用。变量的值从零开始。我尝试也使用for循环,但结果是相同的
final Button choice1 = (Button) findViewById(R.id.C);
backgroundC.setOnClickListener(new View.OnClickListener(){
public void onClick(View view){
while (j < 2){
int randomInt3 = random1.nextInt(Deck.length());
int drawableIDC = Deck.getResourceId(randomInt3, -1);
backgroundC.setBackgroundResource(drawableIDC);
j ++;
}
choice1.setEnabled(false);
}
});
答案 0 :(得分:0)
原因是:当您点击时,循环将运行(2
次),完成后,它将disable
按钮。您需要的是以下代码:
final Button choice1 = (Button) findViewById(R.id.C);
backgroundC.setOnClickListener(new View.OnClickListener(){
public void onClick(View view){
if (j < 2){
int randomInt3 = random1.nextInt(Deck.length());
int drawableIDC = Deck.getResourceId(randomInt3, -1);
backgroundC.setBackgroundResource(drawableIDC);
j++;
}
else {
choice1.setEnabled(false);
}
}
});