如何完全删除可运行的计时器?

时间:2013-03-17 18:57:04

标签: android runnable timertask

我有一个效果很好的计时器,它会每隔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做一些事情,但是我无法用它做很多事情。

总的来说,我在发布的代码中迷失了,因为我不确定现在做了什么,我很感激如何删除导致计时器运行的任何部分的解释。

1 个答案:

答案 0 :(得分:1)

只需创建自己的Handlerpost() TimerTick即可。如果您不希望自己TimerTick投放,请拨打removeCallbacks()上的Handler

(我认为这就是你要问的......)