CountDownTimer的使用

CountDownTimer 是Google给提供的直接实现倒计时的类。使用方法

timer = new CountDownTimer(time,100) {//参数单位毫秒

            @Override
            public void onTick(long arg0) {
                // TODO Auto-generated method stub
                countdown.setText("结束"+arg0/1000+(arg0%1000)/100);/精确到0.1秒的倒计时
                time = arg0;//剩余的时间记下来
            }

            @Override
            public void onFinish() {
                // TODO Auto-generated method stub
                countdown.setText("结束了");
            }
        };
        timer.start();

二、如果屏幕切换的时候保持继续倒计时状态。

定义key

private final static String key = "counttimekey";

保存剩余的时间

    @Override
    protected void onSaveInstanceState(Bundle outState) {
        // TODO Auto-generated method stub
        outState.putLong(key, time);
        super.onSaveInstanceState(outState);
    }

保存Timer对象

@Override
@Deprecated
public Object onRetainNonConfigurationInstance() {
// TODO Auto-generated method stub
return timer;
}

在onCreate方法中取消Timer,获得上次剩余时间

if(savedInstanceState!=null){
            time = savedInstanceState.getLong(key);
            timer = (CountDownTimer) getLastNonConfigurationInstance();
            timer.cancel();
        }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值