Android 我的倒计时器工作不正常
我有一个倒计时器,它每X秒做一件事。 当秒数不多时,让我们说6。。它工作正常,但当秒数很多(比如240秒)时,它会打印出如下日志:Android 我的倒计时器工作不正常,android,countdowntimer,Android,Countdowntimer,我有一个倒计时器,它每X秒做一件事。 当秒数不多时,让我们说6。。它工作正常,但当秒数很多(比如240秒)时,它会打印出如下日志: 2019-02-08 16:40:18.160 23195-23195/com.pondhoppers.riptide.app I/System.out: waiting time left - 47 2019-02-08 16:40:18.181 23195-23195/com.pondhoppers.riptide.app I/System.out: wait
2019-02-08 16:40:18.160 23195-23195/com.pondhoppers.riptide.app I/System.out: waiting time left - 47
2019-02-08 16:40:18.181 23195-23195/com.pondhoppers.riptide.app I/System.out: waiting time left - 41
2019-02-08 16:40:18.208 23195-23195/com.pondhoppers.riptide.app I/System.out: waiting time left - 35
2019-02-08 16:40:18.233 23195-23195/com.pondhoppers.riptide.app I/System.out: waiting time left - 29
2019-02-08 16:40:18.298 23195-23195/com.pondhoppers.riptide.app I/System.out: waiting time left - 23
2019-02-08 16:40:18.323 23195-23195/com.pondhoppers.riptide.app I/System.out: waiting time left - 3
代码:
我决定在后台线程中执行此操作,效果很好:)
new CountDownTimer(240000, 1000) {
@Override
public final void onTick(final long millisUntilFinished) {
System.out.println("waiting time left - " + (int) (millisUntilFinished * .001f));
tvRaffleCount.setText(String.valueOf((Integer.valueOf(countDown)-1000)* 60000));
}
@Override
public final void onFinish() {
try {
tvRaffleCount.setText("");
} catch (Exception v) {
//raffle mode is off
v.printStackTrace();
}
}
}.start();