我檢查了所有關於如何暫停/恢復計時器的答案,但找不到解決方案。Android:暫停/恢復計時器或線程
我已經創建了一個計時器任務,它計算員工的工作時間並將其放入TextView中以顯示。下面
代碼:
Timer T = new Timer();
T.scheduleAtFixedRate(new TimerTask() {
@Override
public void run() {
runOnUiThread(new Runnable() {
@Override
public void run() {
String workingTime = "Your effort is "
+ format.format(Double.valueOf(hr)) + ":"
+ format.format(Double.valueOf(min)) + ":"
+ format.format(Double.valueOf(sec))
+ " till now for the day";
storeEffort.setText(workingTime);
sec++;
if (sec > 59) {
sec = 0;
min = min + 1;
}
if (min > 59) {
min = 0;
hr = hr + 1;
}
}
});
}
}, 1000, 1000);
其中storeEffort是我的TextView,其示出卡在正在運行的線程(主要問題)內的努力的時間。我想用按鈕單擊暫停工作計時器,並在同一按鈕再次點擊時恢復工作計時器。是否有任何其他方式來完成這種任務?
嗯週期性電話怎麼辦? –
定期電話?我不確定我明白這是什麼。我的建議似乎與OP所要求的相同。 –
http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/ScheduledExecutorService.html#scheduleAtFixedRate(java.lang.Runnable,long,long,java.util.concurrent.TimeUnit)last兩個參數提供了執行任務的時間段 - 定期調用 –