android中获取验证码后出现60秒的倒计时

来源:互联网 发布:如何选钢琴老师 知乎 编辑:程序博客网 时间:2024/06/05 00:16

很简单,只需要两步:

第一步:

新建一个类继承CountDownTimer

第二步:给按钮设置点击事件

全部代码如下

public class MainActivity extends Activity {      private TimeCount time;      private Button btnGetcode;      @Override      protected void onCreate(Bundle savedInstanceState) {          super.onCreate(savedInstanceState);          setContentView(R.layout.activity_main);          time = new TimeCount(60000, 1000);          btnGetcode=(Button) findViewById(R.id.btn_getcode);          btnGetcode.setOnClickListener(new OnClickListener() {                              @Override              public void onClick(View v) {                  time.start();              }          });      }      class TimeCount extends CountDownTimer {              public TimeCount(long millisInFuture, long countDownInterval) {              super(millisInFuture, countDownInterval);          }              @Override          public void onTick(long millisUntilFinished) {              btnGetcode.setBackgroundColor(Color.parseColor("#B6B6D8"));              btnGetcode.setClickable(false);              btnGetcode.setText("("+millisUntilFinished / 1000 +") 秒后可重新发送");          }              @Override          public void onFinish() {              btnGetcode.setText("重新获取验证码");              btnGetcode.setClickable(true);              btnGetcode.setBackgroundColor(Color.parseColor("#4EB84A"));              }      }      }  




0 0