注册时获取验证码常用的倒计时工具

Posted 寻梦园

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了注册时获取验证码常用的倒计时工具相关的知识,希望对你有一定的参考价值。


//在这个构造方法里需要传入三个参数,一个是Activity,一个是总的时间millisInFuture,
// 一个是每次减少的时间,最后一个是显倒计时的按钮
用法:
TimeLastUtil
timeLastUtil = new TimeLastUtil(this, 60000, 1000, btn);
timeLastUtil.start();



工具类:

public class TimeLastUtil extends CountDownTimer {

private Activity mActivity;
private TextView btn;// 按钮

//在这个构造方法里需要传入三个参数,一个是Activity,一个是总的时间millisInFuture,
// 一个是countDownInterval,然后就是你在哪个按钮上做这个是,就把这个按钮传过来就可以了
public TimeLastUtil(Activity mActivity, long millisInFuture,
long countDownInterval, TextView btn) {
super(millisInFuture, countDownInterval);
this.mActivity = mActivity;
this.btn = btn;
}



@SuppressLint("NewApi")
@Override
public void onFinish() {
btn.setText(R.string.register_regetchecknum);
btn.setClickable(true);// // 重新获得点击
btn.setBackgroundColor(Color.parseColor("#00CCCC"));// 还原背景色
}

@Override
public void onTick(long millisUntilFinished) {
btn.setClickable(false);// 设置不能点击
btn.setText(millisUntilFinished / 1000 + "s后可重新发送");// 设置倒计时时间

// 设置按钮为灰色,这时是不能点击的
btn.setBackgroundColor(Color.GRAY);
Spannable span = new SpannableString(btn.getText().toString());// 获取按钮的文字
span.setSpan(new ForegroundColorSpan(Color.RED), 0, 2,
Spannable.SPAN_INCLUSIVE_EXCLUSIVE);// 讲倒计时时间显示为红色
btn.setText(span);

}

}
 

以上是关于注册时获取验证码常用的倒计时工具的主要内容,如果未能解决你的问题,请参考以下文章

JS实现验证码倒计时效果

前端常用库-发送短信验证码倒计时60秒

前端常用库-发送短信验证码倒计时60秒

获取验证码倒计时

js实现发送验证码倒计时按钮

完整且易读的微信小程序的注册页面(包含倒计时验证码获取用户信息)