Android倒计时类CountDownTimer的简单使用

来源:互联网 发布:芯片设计工程师 知乎 编辑:程序博客网 时间:2024/06/06 01:07

第一,先简单介绍下CountDownTime是官方的倒计时类,传如两个参数,第一个参数是总时间,第二个参数是时间间隔,毫秒级

private CountDownTimer timer =newCountDownTimer(10000,1000) {

@Override//此方法是每个时间间隔都会调用一次

publicvoidonTick(longmillisUntilFinished) {

mTvShow.setText((millisUntilFinished /1000) +"秒后可重发");

}

@Override// 此方法是倒计时结束时调用的方法

publicvoidonFinish() {

mTvShow.setEnabled(true); mTvShow.setText("获取验证码");

}

};

第二,一般我们都会用TextView来展示剩余时间,那么此时我们可以自定义一个计时器,在其构造方法中我们传递一个TextView

public classCountDownUtilextendsCountDownTimer {

privateTextViewtv;//

publicCountDownUtil(longmillisInFuture,longcountDownInterval) {

super(millisInFuture, countDownInterval);

}

publicCountDownUtil(longmillisInFuture,longcountDownInterval, TextView tv) {

super(millisInFuture, countDownInterval);

this.tv= tv;

}

@SuppressLint("NewApi")

@Override

public voidonTick(longmillisUntilFinished) {

tv.setText(DateFormat.getHours(millisUntilFinished));//设置时间

//这里接收的是毫秒值,当然,我们要将他格式化一下

}

@SuppressLint("NewApi")

@Override

public voidonFinish() {

}

}

第三,如果取消倒计时,那么可以调用cancel()的方法.

ok若有错误之处请告知我一下,479192454(群号,初级开发)谢谢!也希望可以一起交流.