class MyTimer extends CountDownTimer{
private static final String TAG = "HeartBeatTimer";
private static final long MILLIS_IN_FUTURE = 4000;
private static final long COUNT_DOWN_INTERVAL = 1000; // MILLIS_IN_FUTURE/2
public HeartBeatTimer(){
super(MILLIS_IN_FUTURE, COUNT_DOWN_INTERVAL);
}
@Override
public void onFinish() {
Log.d(TAG, "onFinish");
}
@Override
public void onTick(long millisUntilFinished) {
Log.d(TAG, "onTick" + millisUntilFinished);
}
}
android自己的sdk里面帶了一個(gè)CountDownTimer, 可以用倒計(jì)時(shí)的方式處理一些問(wèn)題.
09-19 17:07:30.098: DEBUG/HeartBeatTimer(29362): ON START
09-19 17:07:30.098: DEBUG/HeartBeatTimer(29362): onTick3996
09-19 17:07:31.098: DEBUG/HeartBeatTimer(29362): onTick2995
09-19 17:07:32.098: DEBUG/HeartBeatTimer(29362): onTick1994
09-19 17:07:34.098: DEBUG/HeartBeatTimer(29362): onFinish
我實(shí)驗(yàn)的時(shí)候, 出現(xiàn)了一個(gè)問(wèn)題, 百思不得其解:
在這里例子里我設(shè)置定時(shí)時(shí)長(zhǎng)為4s, 間隔時(shí)間為1s ;按道理應(yīng)該每隔1s, 有一個(gè)ontick調(diào)用, 但最后一次ontick 和onFinish之間的間隔是2s.