我在我的方法中使用了这个sleep()方法,但问题是它在我希望它睡觉之前睡觉。这是我的方法:
public void onAnswered() {
try {
cTimer.cancel();
setCorrectFlag();
System.out.println("something");
Thread.sleep(1000);
position++;
if (position < 10)
next();
else {
}
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
System.out.println("something");
之前正在工作,但是`setCorrectFlag();在睡眠1秒后发生这种情况,之前它没有改变按钮的颜色,但是之后。我不知道这是怎么回事。这是其他方法:
public void setCorrectFlag(){
int id = 0;
for(int i=0;i<randomQuestions.get(position).getAnswers().size();i++){
if(randomQuestions.get(position).getCorrectAnswer().equalsIgnoreCase(randomQuestions.get(position).getAnswers().get(i).substring(0, 1))){
id = i;
}
}
switch(id){
case 0:
b1.setBackgroundColor(Color.GREEN);
break;
case 1:
b2.setBackgroundColor(Color.GREEN);
break;
case 2:
b3.setBackgroundColor(Color.GREEN);
break;
case 3:
b4.setBackgroundColor(Color.GREEN);
break;
}
}