TextView不断显示剩下的时间,
public class MyCountDownTimer extends CountDownTimer{
/**
* @param millisInFuture The number of millis in the future from the call
* to {@link #start()} until the countdown is done and {@link #onFinish()}
* is called.
* 表示以毫秒为单位 倒计时的总数 * 例如 millisInFuture=1000 表示1秒 *
* @param countDownInterval The interval along the way to receive
* {@link #onTick(long)} callbacks.
* 表示 间隔 多少微秒 调用一次 onTick 方法 * *
* 例如: countDownInterval =1000 ; 表示每1000毫秒调用一次onTick() *
*/
public MyCountDownTimer(long millisInFuture, long countDownInterval) {
super(millisInFuture, countDownInterval);
}
@Override
public void onTick(long millisUntilFinished) {
Log.i("MainActivity", millisUntilFinished + "");
// countdown.setText("倒计时(" + millisUntilFinished / 1000 + ")...");
countdown.setText(millisUntilFinished / 1000 +"");
}
@Override
public void onFinish() {
countdown.setText("done");
}
}
接下来 Mainactivity 中来调用
myCountDownTimer=new MyCountDownTimer(300000,1000); myCountDownTimer.start();
还有一个 取消的方法
myCountDownTimer.cancel();
第二种方法::
private TextView vertifyView; private CountDownTimer timer = new CountDownTimer(10000, 1000) { @Override public void onTick(long millisUntilFinished) { vertifyView.setText((millisUntilFinished / 1000) + "秒后可重发"); } @Override public void onFinish() { vertifyView.setEnabled(true); vertifyView.setText("获取验证码"); } };