倒计时短信验证

本文介绍了一种在Android应用中实现倒计时按钮的方法。通过自定义`TimeCount`类继承`CountDownTimer`,文章展示了如何设置按钮在倒计时期间的不可点击状态及外观变化,并在倒计时结束后恢复其原始状态。

public class MainActivity extends Activity { 

private TimeCount timeCount; 

private Button btn; 

protected void onCreate(Bundle savedInstanceState) { 
super.onCreate(savedInstanceState); 
setContentView(R.layout.activity_main); 

//这里设置时间
timeCount = new TimeCount(30000, 1000); 
btn = (Button) findViewById(R.id.btn); 

btn.setOnClickListener(new OnClickListener() { 

@Override 
public void onClick(View v) { 
timeCount.start(); 


}); 


class TimeCount extends CountDownTimer { 
public TimeCount(long millisInFuture, long countDownInterval) { 
super(millisInFuture, countDownInterval); 


public void onFinish() { //计时完毕时触发
btn.setText("获取验证码"); 
btn.setBackgroundResource(R.drawable.obtain_btn_bg);//正常背景 
btn.setClickable(true); 


public void onTick(long millisUntilFinished) { //计时过程显示
btn.setClickable(false); 
btn.setBackgroundResource(R.drawable.obtain_reading);//倒计时时灰色背景 

btn.setText(millisUntilFinished / 1000 + "s后重新获取"); 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值