我想在for循环中使用CountDownTimer,但是当我使用以下代码时,CountDownTimer仅运行一次,而我想根据for循环中的给定条件运行CountDownTimer。这可能是一个愚蠢的问题,但是如果能得到我的帮助,我将非常感谢您。在此先感谢
for (int i=1;i<=10;i++){
Random random = new Random();
totalques.setText(String.valueOf(i) + "/10");
firstnum.setText(String.valueOf(random.nextInt(100)));
secondnum.setText(String.valueOf(random.nextInt(50)));
new CountDownTimer(5000, 1000) {
@Override
public void onTick(long millisUntilFinished) {
time.setText(String.valueOf(millisUntilFinished / 1000)
+"s");
}
@Override
public void onFinish() {
}
}.start();
}
答案 0 :(得分:0)
您可以使用Timer类完成工作
final Handler handler = new Handler();
Timer timer = new Timer();
TimerTask timerTask = new TimerTask() {
@Override
public void run() {
handler.post(new Runnable() {
public void run() {
//one second elapsed
}
});
}
};
timer.schedule(timerTask, 0, 1000);
计划方法说直接开始,每隔1000毫秒就会通知我。
当您想使用timer.cancel()
在运行过程中,您可以减少一个int值,当它达到0时,您可以停止计时器