2

我有一个很好用的计时器,它会每 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 中的帮助,显然这只不会影响任何当前正在运行的任务。我测试了它,它没有工作。

我想也许我可以用可运行的对象做点什么,Timer_Tick但我能做的不多。

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

4

1 回答 1

1

只需创建你自己的Handlerpost()你自己TimerTick的。如果你不想让你TimerTick运行,那么只需调用removeCallbacks()你的Handler.

(我想这就是你要问的......)

于 2013-03-17T21:10:20.093 回答