定时器的使用几乎所有app里都有,进行必要的封装使代码重用性大大提高:
package com.analysys.timer_timertask_handler_demo.controllers; import android.os.Handler; import android.os.Message; import java.util.Timer; import java.util.TimerTask; /** * Created by MQL on 2016/8/12. */ public class TimerManager { private Timer timer; private TimerTask timerTask; private Handler handler; public TimerManager(final Handler handler){ this.handler = handler; this.timer = new Timer(); this.timerTask = new TimerTask() { @Override public void run() { if (handler != null){ Message msg = new Message(); handler.sendMessage(msg); } } }; } /* 启动定时器, 在延时delay的时间后执行第一次,以后每隔period时间,执行一次 delay:第一次执行延时的时间 period:循环执行周期 */ public void startTimer(long delay, long period){ timer.schedule(timerTask, delay, period); } /* 取消定时器 */ public void cancelTimer(){ timer.cancel(); } }