在Android项目中实现一个定时的效果很普遍,这就涉及到Timer和TimerTask两个类:
首先定义一个handler来接受消息
private int i = 0;
private Handler handler = new Handler(){public void handleMessage(Message msg) {
i++;
if(i>=5){
//定时5秒后做你想做的事情
}
};};
在需要用到定时器的地方来创建Timer
Timer mTimer = new Timer();
创建TimerTask类
TimerTask mTask = new TimerTask(){
@Override
public void run() {
handler.sendEmptyMessage(0);
}
};
mTimer.schedule(mTask, 1000,1000);
这里要说一下 mTimer.schedule中的三个参数,第一个不用说了,第二个意思是第一次发生,延迟1秒后发送,如果是0,就是第一次没有延迟发送消息.即,第一次延迟多少时间发送.不管第一次延迟多久,以后再发送消息就看第三个参数
第三个参数是,每隔多久发送一次.
上面的例子意思是,延迟一秒发送消息,以后每一秒发送一次
mTimer.schedule(mTask, 2000,5000);这个意思就是第一次延迟2秒钟,以后每5秒发送一次.