Android倒计时功能的实现(CountDownTimer)

来源:互联网 发布:云上使用软件 编辑:程序博客网 时间:2024/06/05 18:30
以前编程的时候,遇到倒计时的功能时,经常自己去写,但其实Android已经帮封装好了一个倒计时类CountDownTimer,其实是将后台线程的创建和Handler队列封装成为了一个方便的类调用。

说明:
CountDownTimer timer = new CountDownTimer(30000, 1000)中,第一个参数表示总时间,第二个参数表示间隔时间。
意思就是每隔一秒会回调一次方法onTick,然后30秒之后会回调onFinish方法。


package com.androidcountdowntimer2;import android.app.Activity;import android.os.Bundle;import android.os.CountDownTimer;import android.widget.TextView;/** * Android倒计时功能的实现(CountDownTimer) * @author zhongyao * */public class MainActivity extends Activity {private MyCount mc;      private TextView tv;      @Override      protected void onCreate(Bundle savedInstanceState) {          super.onCreate(savedInstanceState);          setContentView(R.layout.activity_main);          tv = (TextView)findViewById(R.id.show);          mc = new MyCount(30000, 1000);          mc.start();      }      /*定义一个倒计时的内部类*/      class MyCount extends CountDownTimer {             public MyCount(long millisInFuture, long countDownInterval) {                 super(millisInFuture, countDownInterval);             }                          @Override             public void onTick(long millisUntilFinished) {               tv.setText("请等待:" + millisUntilFinished / 1000 + "秒...");             }                    @Override             public void onFinish() {                 tv.setText("finish");                }    }          @Override      protected void onDestroy() {          super.onDestroy();          mc.cancel();      } }


2 0