我有一个效果很好的计时器,它会每隔10秒输出一次我的Toast。我以为我理解下面的代码相当不错,但显然我没有因为我无法删除计时器,这里是我的代码:
private void TimerMethod() {
this.runOnUiThread(Timer_Tick);
}
private Runnable Timer_Tick = new Runnable() {
public void run() {
Toast.makeText(Map.this, "You are going to " + destination,Toast.LENGTH_SHORT).show();
}
};
public void time() {
myTimer.schedule(new TimerTask() {
@Override
public void run() {
TimerMethod();
}
}, 0, timerAmount);
}
我试过了:
myTimer.cancel();
但根据Android的帮助,显然这只会影响当前正在运行的任务。我测试过它并没有用。
我想也许我可以使用runnable对象Timer_Tick
做一些事情,但是我无法用它做很多事情。
总的来说,我在发布的代码中迷失了,因为我不确定现在做了什么,我很感激如何删除导致计时器运行的任何部分的解释。
答案 0 :(得分:1)
只需创建自己的Handler
和post()
TimerTick
即可。如果您不希望自己TimerTick
投放,请拨打removeCallbacks()
上的Handler
。
(我认为这就是你要问的......)