TextView +Timer

TextView+Timer——Android

实现TextView+Timer其实没必要那么麻烦,直接用下面这个方法即可。记住一点避免重复造轮子。但是你有必要了解下轮子的使用方法。Android的Api中已经在我们不知不觉的中为我们添加了以下方法。

public abstract class CountDownTimer {
    public CountDownTimer(long millisInFuture, long countDownInterval) {}

    public final synchronized void cancel() {}

    public final synchronized CountDownTimer start() {}

    public abstract void onTick(long var1);

    public abstract void onFinish();
}

1.CountDownTimer(long millisInFuture, long countDownInterval) ——构造方法。
millisInFuture为总时间;countDownInterval为间断时间。每隔多少秒回调一次onTick()方法。
2.onTick(long millisUntilFinished) ——表示多离预期时间还有多久
3.onFinish()——表示计时器完成的回调
4.cancel()——表示取消计时器操作
5.start()——开始计时

TextView和CountDownTimer结合 我们可以这样使用。

TextView testTextView=new TextView();
testTextView.setOnClickListener(new View.OnClickListener(){
      @Override
      public void onClick(View view){
          testTextView.setEnabled(false);
          timer.start();  //记得调用start()方法启动。
    }
});
private CountDownTimer timer = new CountDownTimer(millisInFuture, countDownInterval) { 
         @Override
        public void onTick(long millisUntilFinished) {
        testTextView.setText((millisUntilFinished/1000)+"s后重新开始");
        }

         @Override
        public void onFinish() { 
           testTextView.setEnabled(true);
           testTextView.setText("点击计时开始);
        }
    };

好了,这样我们就可以实现TextView+Timer的效果了。

你可能感兴趣的:(TextView +Timer)