Android开发之获取验证码倒计时
2020-09-02 本文已影响0人
Amy木婉清
写在前面:
现在很多APP在获取验证码时都会有一个计时的功能,让小编带大家看一下计时是怎么实现的叭.
代码:
//创建倒计时对象(每隔一秒更新一次,共计60秒)
MyCountDownTimer myCountDownTimer = new MyCountDownTimer(60000, 1000);
//倒计时函数
private class MyCountDownTimer extends CountDownTimer {
public MyCountDownTimer(long millisInFuture, long countDownInterval) {
super(millisInFuture, countDownInterval);
}
//计时过程
@Override
public void onTick(long l) {
//防止计时过程中重复点击
btnGetVerityNumber.setClickable(false);
btnGetVerityNumber.setText(l / 1000 + "秒");
}
//计时完毕的方法
@Override
public void onFinish() {
//重新给Button设置文字
btnGetVerityNumber.setText("重新获取");
//设置可点击
btnGetVerityNumber.setClickable(true);
}
}
//销毁倒计时
@Override
protected void onDestroy() {
super.onDestroy();
if (myCountDownTimer != null) {
myCountDownTimer.cancel();
myCountDownTimer = null;
}
}
}