1 、需求
多个页面需要用到显示定时器页面,页面里面时间会一秒一秒减少,页面布局如下,开了定时器,如果其它页面也打开会使用之前的页面里面显示的时间,也就是说在有效范围内,时间不刷新。
2 、关键点
使用Android自带的倒计时类CountDownTimer
CountDownTimer mCountDownTimer = new CountDownTimer(1000 * 60 * 10, 1000) {
@Override
public void onTick(long millisUntilFinished) {
//每次执行显示,value表示还剩下多少秒
String value = millisUntilFinished / 1000
}
@Override
public void onFinish() {
//倒计时完后
}
//开启倒计时
mCountDownTimer.start();
//取消倒计时
mCountDownTimer.cancel();
如果写在activity或者Fragment里面,我们要记得在onDestroy里面加上cancel函数,避免泄漏,然后由于我这里多个页面会用到这个倒计时,所以我封装成了单例