Im使用Timer
来连续更新TextView
,但我在onResume()
方法中重新启动计时器时遇到问题。我在onPause()
和onDestroy()
方法中使用timer.cancel()
,但是如何在onResume()
中重新启动计时器?在onResume()方法中重新启动计时器?
这是我的计时码...
int delay = 1000;
int period = 1000;
Timer timer = new Timer();
timer.scheduleAtFixedRate(new TimerTask() {
public void run() {
//I update the TextView here
}
}, delay, period);
但我认为你不能使用定时器,因为它创建一个新的线程,主UI线程 – Snake 2012-05-31 17:47:35
@Snake上没有n要执行更新GUI:有些GUI更新功能的工作从非GUI线程调用时,但这是没有很好的文件。对于在GUI线程之外不能调用的其他函数,如果绝对必要,我们可以使用runOnGUIThread()函数。我宁愿使用Handler来完成这种任务。 – binW 2012-06-01 09:55:40