2011-01-19 67 views
3

我有一個服務在15秒後啓動一個線程。這是我的代碼片段:如何停止使用postDelayed完成線程的啓動

 Handler mHandler = new Handler(); 
     OverclockThread ocThread = new OverclockThread(); 
     ocThread.ocPreference = readPreference("oc"); 
     ocThread.serviceOn = true; 

     if (Intent.ACTION_SCREEN_ON.equals(action)) { 
      ocThread.screenOff = false; 
      mHandler.postDelayed(ocThread, 15000); 
     } 

現在我想通過按下按鈕或一個複選框添加這15秒鐘後停止我ocThread的發射能力...例如...我必須使用哪個命令來停止使用postDelayed啓動的線程?

感謝

西蒙

+0

的可能重複的[如何刪除從通過postDelayed添加處理程序對象可運行?](HTTP://計算器。 com/questions/3627216/how-to-remove-a-runnable-from-a-handler-object-added-by-postdelayed) – sschuberth 2013-07-05 14:15:09

回答

11

I'have使用:

mHandler.removeCallbacks(ocThread); 
+0

你可以將你的答案標記爲正確:) – 2011-05-09 12:07:40