所以当用户按下按钮时,我有一个翻转硬币的应用程序。目前它只是显示结果,但我想在显示结果之前添加一个小尾部 - 尾部 - 尾部 - 头部循环,以显示它正被翻转。我正在使用thread.sleep:
public void flip(){
for(int i = 0; i < 5; i++){
coin.setImageResource(R.drawable.heads);
try {
Thread.sleep(500);
} catch (InterruptedException ex) {
System.out.println("Error! :(");
}
coin.setImageResource(R.drawable.tails);
try {
Thread.sleep(500);
} catch (InterruptedException ex) {
System.out.println("Error! :(");
}
}
}
但不是显示图像更改,所有发生的事情都是应用程序正在执行延迟。我搞砸了什么?
答案 0 :(得分:0)
执行Runnable之前的延迟(以毫秒为单位)。
final Handler handler = new Handler();
coin.setImageResource(R.drawable.heads);
handler.postDelayed(new Runnable() {
@Override
public void run() {
coin.setImageResource(R.drawable.tails);
}
}, 500); // milliseconds