2011-04-01 121 views
0

我試圖在輸入活動時顯示一系列圖像。
顯示的圖像應該在約1秒後改變,按下按鈕應該暫停圖像切換並且按鈕的切換應該能夠再次切換。暫停按鈕應停止切換圖像

我已經使用CountDownTimer通過onTick()rountine切換圖像;但是我不確定如何創建暫停按鈕功能。也許使用CountDownTimer不是最好的方法?

有什麼建議嗎?

由於提前, Ĵ

+0

可能重複http://stackoverflow.com/questions/5508773 /暫停按鈕應該停止圖像從開關手機) – 2011-04-01 04:38:19

回答

0

您不能暫停CountDownTimer但你可以.cancel()方法將其取消。然後,切換時只需創建另一個CountDownTimer對象並從最後一個圖像開始。

另一種方法是使用postDelayed可運行它可以遞歸調用自己,直到停頓了一下:

public void myTimer(){ 
    new Handler().postDelayed(new Runnable() {   
    @Override   
    public void run() {    
     //here call the next slide 
     if(!pause) myTimer();    
     }  
    }, 5000); 
} 
[暫停按鈕應該切換光圈圖片...的Android(的
+0

我試圖使用postDelayed runnable,因爲你建議......在活動中,我應該把它放在哪裏?在onCreate內?或作爲活動內部的獨立任務? 是這樣的遞歸調用... this.postDelayed(); – 2011-04-19 16:46:45

+0

我已經編輯了代碼,所以這個方法,你可以每5秒看到自己的呼叫(遞歸)。如果你設置暫停varibale爲TRUE,那麼它將停止。您將它放在onCreate方法下方,但仍在活動類中。您將pause varibale定義爲boolean,然後調用此方法myTimer();在onCreate。您只需輸入代碼或調用其他方法在run()中執行幻燈片。 – Lumis 2011-04-19 22:41:21

+0

超級!現在工作很好。我在onCreate()中使用pButton.setOnClickListener(...)來修改暫停變量。默認情況下,暫停設置爲false。按鈕切換兩次後,暫停變量返回到false狀態,並且必須調用myTimer()才能讓幻燈片再次切換。乾杯:) – 2011-04-22 17:59:25