Android(安卓)获取验证码倒计时实现
16lz
2021-01-24
####1. 验证码输入框和获取验证码按钮布局
xml代码:
效果如下:
####2. 根据id设置Button点击事件触发倒计时
JAVA代码:
/** * Created by fby on 2017/9/11. */public class ChargepsdActivity extends Activity { private Button timeButton; @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_chargepsd); timeButton = (Button) findViewById(R.id.timebutton); //new倒计时对象,总共的时间,每隔多少秒更新一次时间 final MyCountDownTimer myCountDownTimer = new MyCountDownTimer(60000,1000); //设置Button点击事件触发倒计时 timeButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { myCountDownTimer.start(); } }); }
####3. 倒计时函数
//倒计时函数 private class MyCountDownTimer extends CountDownTimer { public MyCountDownTimer(long millisInFuture, long countDownInterval) { super(millisInFuture, countDownInterval); } //计时过程 @Override public void onTick(long l) { //防止计时过程中重复点击 timeButton.setClickable(false); timeButton.setText(l/1000+"秒"); } //计时完毕的方法 @Override public void onFinish() { //重新给Button设置文字 timeButton.setText("重新获取"); //设置可点击 timeButton.setClickable(true); } }}
####4. 清除倒计时函数,解决验证码输入正确后停止计时
private void clearTimer() { if (task != null) { task.cancel(); task = null; } if (timer != null) { timer.cancel(); timer = null; } }
希望可以帮助大家
如果哪里有什么不对或者不足的地方,还望读者多多提意见或建议
Android技术交流群:591625129
更多相关文章
- C语言函数的递归(上)
- [置顶] Android(安卓)IPC 通讯机制源码分析【下】
- Android(安卓)【将图片网址Url转化为Bitmap工具类】
- mono修改代码模板
- Android用户界面
- android4.4.2 bluetooth解析(二)
- 使用U3D 实现 Android(安卓)Launcher(提供源码)
- Android(安卓)Studio 工程.GitIgnore应该忽略的文件
- Android(安卓)NDK学习笔记11-JNI异常处理