android实现一个图片验证码倒计时功能
程序员文章站
2023-12-03 10:55:22
1.如图所示,要实现一个验证码的倒计时的效果
&n...
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();
总结
以上所述是小编给大家介绍的android实现一个图片验证码倒计时功能,希望对大家有所帮助