我制作了一个计算奶牛的应用程序。基本上你有奶牛的收入。我使用计时器来处理收入,一切都很好,直到我改变到另一个活动并回到主要活动。
一旦我回到主要活动(从另一个活动),双 (cowCount) 继续增加,但我的 refresh() 方法(正在刷新 TextView)不会运行,即使它使用相同的方法:
public void Income() {
cowCount = cowCount + income;
runOnUiThread(new Runnable() {
public void run() {
refresh();
if(timerCancel == true) {
Thread.interrupted();
}
}
});
}
这是我的计时器方法:
public void startIncomeTimer() {
timerRunning = true;
Timer timer = new Timer();
timer.schedule(new Income(), 0, 100);
if(timerCancel == true) {
timer.cancel();
}
}
离开活动时,timerRunning 被声明为 false,timerCancel 被声明为 true。那么,为什么 runOnUiThread() 没有正确执行呢?