1.如图所示,要实现一个验证码的倒计时的效果
2.实现
图中获取验证码那块是一个button按钮
关键部分,声明一个TimeCount,继承自CountDownTimer
/*验证码倒计时*/ private class TimeCount extends CountDownTimer{ /** * @param millisInFuture 总时间长度(毫秒) * @param countDownInterval 时间间隔(毫秒),每经过一次时间间隔都会调用onTick方法 */ public TimeCount(long millisInFuture, long countDownInterval) { super(millisInFuture, countDownInterval); } @Override public void onTick(long millisUntilFinished) { //倒计时状态 getVerificationCodeBtn.setClickable(false); //设置button此时不可点击 getVerificationCodeBtn.setBackground(getResources().getDrawable(R.drawable.get_verification_code_waitting_bg));//修改button的背景 getVerificationCodeBtn.setTextColor(getResources().getColor(R.color.black));//修改button的textColor getVerificationCodeBtn.setText(millisUntilFinished / 1000 +"s后可重新发送");//显示button的倒计时文字 } @Override public void onFinish() { //倒计时结束状态 getVerificationCodeBtn.setBackground(getResources().getDrawable(R.drawable.login_btn_bg)); getVerificationCodeBtn.setTextColor(getResources().getColor(R.color.white)); getVerificationCodeBtn.setClickable(true); //重新设置button为可点击 getVerificationCodeBtn.setText("重新获取"); //修改button的文字 } }
最后在代码中,声明TimeCount并实例化,在button的点击事件中调用.start()方法启动定时器。
TimeCount timeCount = new TimeCount(60000,1000); timeCount.start();
火柴人绳索英雄2无限金币版 (Stickman Rope Hero 2)安卓版v2.2v3.4.2
下载奥特曼之格斗超人内测版本 安卓最新版v11.0.0
下载奥特曼之格斗超人百度版 安卓版v11.0.0
下载奥特曼之格斗超人4399游戏盒版 最新安卓版v11.0.0
下载德凯奥特曼D闪光剑模拟器 安卓版v1.0
德凯奥特曼D闪光剑模拟器是一个非常有趣的奥特曼变身模拟器,可
亚刻觉醒器 安卓版v1.1
亚刻觉醒器模拟器是一个非常有趣的奥特曼变身模拟器,为喜欢亚刻
海上餐厅无限金币版 v1.0
海上餐厅免广告版是游戏的破解版本,在该版本中为玩家去除了广告
阿西美女室友竟然全解锁版 v1.0.2
阿西美女室友竟然内置菜单版是游戏的破解版本,在该版本中为玩家
我是大东家正版 最新版v1.2.738
我是大东家正版是一款放置类模拟经营手游,玩家将回到古代成为家