计时器

 

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();
    }
}
相关文章
相关标签/搜索