使用timertask进行定时任务
首先创建TimerTask:
class SynchroTimerTask extends TimerTask { @Override
public void run() { //请求数据
runOnUiThread(new Runnable() {
@Override
public void run() { //刷新界面
}
});
}
}
创建timer并执行任务:
//开启自动刷新
timer= new Timer();
SynchroTimerTask task = new SynchroTimerTask();
timer.schedule(task , 0 , 1000);
//0是延迟时间 1000是任务执行的间隔时间
顺便说下timer.schedule和timer.scheduleAtFixedRate两个方法的区别 :
前者是在上个任务执行结束后才开始计算间隔时间,然后重复执行任务,而后者是在任务开始时就开始计间隔时间,时间到了就重复执行任务,不会因为任务的执行时间而延后,这就涉及到了同步的问题;