赞
踩
在进行app开发的过程中,在进行某些倒计时的功能项目开发中,会遇到在锁屏息屏休眠一段时间的情况下,
在唤醒屏幕的情况下发现倒计时已经停止了,这是因为在系统处于休眠的状态下cpu也停止了工作,所以
handler和countdowntimer倒计时也停止了工作,接下来就来看怎么样来实现这个问题的解决
倒计时可以说我们App开发中常见的一种场景了,比如Splash倒计时跳转首页,比如发送短信之后倒计时60秒显示等等。
接下来看下几种倒计时方式
一、CountDownTimer的实现
- private class AutoCountDownTimer extends CountDownTimer{
-
- public AutoCountDownTimer(long millisInFuture, long countDownInterval) {
- super(millisInFuture, countDownInterval);
- }
-
- @Override
- public void onTick(long l) {
- Log.e(TAG,"当前运行时间---l:"+l);
- }
-
- @Override
- public void onFinish() {
- Log.e(TAG,"倒计时完成.....");
- }
- }
二、直接用Handler的实现
我们可以直接使用Handler的延时发送消息实现倒计时。
当然另一种做法是使用 Runnable 来实现。
Handler handler
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。