時工作,我有一個處理器和一個可運行,可運行的帖子敬酒屏幕每5秒,這裏是代碼:刪除處理程序回調停止離開和返回到活動
Handler handler = new Handler();
Runnable runnable = new Runnable() {
public void run() {
Toast.makeText(getApplicationContext(), "DISPLAY MESSAGE" + walking, Toast.LENGTH_SHORT).show();
handler.postDelayed(runnable, 5000);
}
};
在同一活動我可以通過按下按鈕殺,調用此刪除回調:
handler.removeCallbacks(runnable);
當上述被稱爲麪包停止顯示,因此所有已經很不錯了。當我離開我的活動轉到另一個活動時,這些吐司消息不斷顯示,這是我想要的,但是當我回到創建runnable的第一個活動並按下kill按鈕時,它不會刪除可運行的。離開和回來時,我不能再移除可運行的程序。
我試過使用幾乎所有的例子,我看過使用處理程序和runnables所以沒有什麼幫助我弄清楚這一點。
難道是當我離開我的活動並返回它創建新的runnable和處理程序對象?如果是這樣,爲什麼最初的runnable繼續運行?
你能提供一個這樣的例子,我研究它,當我看了你的答案,但我不確定你的意思是什麼。謝謝! – deucalion0 2013-03-22 18:17:04
我創建了一個處理我的處理程序的類,感謝這個想法! – deucalion0 2013-03-22 23:52:13