計時器

 

java.util.Timer timer = new java.util.Timer(true);

        TimerTask task = new TimerTask() {
            public void run() {
                //每次須要執行的代碼放到這裏面。

               runOnUiThread(new Runnable() {
                   @Override
                   public void run() {
                       Toast.makeText(MainActivity.this, "噼裏啪啦", Toast.LENGTH_SHORT).show();
                   }
               });
            }
        };

        //如下是幾種調度task的方法:

        //time爲Date類型:在指定時間執行一次。
//        timer.schedule(task, time);

        //firstTime爲Date類型,period爲long,表示從firstTime時刻開始,每隔period毫秒執行一次。
//        timer.schedule(task, firstTime, period);

        //delay 爲long類型:從如今起過delay毫秒執行一次。
//        timer.schedule(task, delay);

        //delay爲long,period爲long:從如今起過delay毫秒之後,每隔period毫秒執行一次。
        timer.schedule(task, delay, period);

切記 初始化的時候要直接new出來,不要使用的時候在new否則重複進入頁面,會開啓不少個。java

要注意在關閉ide

否則關閉了Activity或者後臺運行的時候也在計時this

@Override
protected void onPause() {
    super.onPause();
    i = 0;
    if (timer != null){
        timer.cancel();
    }
    if (timerTask != null){
        timerTask.cancel();
    }
}
相關文章
相關標籤/搜索