CountDownTimer是一个倒计时的类,还可以指定时间间隔定期通知,举个栗子,比如说你倒计时是100秒的,可以指定每20秒通知一次,这样开始的时候会回调一次,20秒时会回调一次,40秒时会回调一次…,200秒时的回调和时间间隔的回调不同方法的。
常用方法:
- cancel() 取消倒计时
- onFinish() 时间到了,就会触发回调。
- onTick 定期间隔触发回调
- start() 开始倒计时
CountDownTimer timer = new CountDownTimer(90 * 1000 - 1, 1000) {
@Override
public void onTick(long millisUntilFinished) {
tvSendCode.setText(millisUntilFinished / 1000 + "s再次重发");
}
@Override
public void onFinish() {
tvSendCode.setText("重发短信验证码");
tvSendCode.setTextColor(getResources().getColor(R.color.light_red));
tvSendCode.setEnabled(true);
tvSendCode.setClickable(true);
}
}.start();