2015-11-03 55 views
0

我有一個程序,其中有一個在後臺運行的二十秒計時器(使用服務)我想讓應用程序記錄剩餘的時間量。例如,在五秒鐘內,記錄「還剩五秒!」 onTick方法在這方面可能非常有用,除了問題是定期進行的;所以我可能無法根據剩餘時間調出特定的消息。這裏是我的計時器:簡單的計時器,如何說時間間隔?

enter image description here

我會很感激的迴應,因爲我一直在頭腦風暴的方式做到這一點了很長一段時間了。如果您需要更多信息,請隨時詢問!

{Rich} 

回答

2

在onTick方法,你可以不喜歡

int timeRemaining = 20000 - millisUntilFinished; 
if(timeRemaining % 1000 == 0){ 
    Log.d("Time remaining", (timeRemaining % 1000) + " seconds left"); 
} 

既然你已經有一個1000作爲您的間隔,也許,這將有助於在這裏跳過if塊。

如果你關心你的四捨五入毫秒到最近的1000,那麼也許這將幫助 MathUtils.round((double) timeRemaining, -3); 這裏的第二個參數來幫助選擇精確的四捨五入,-1幾十,-2數百-3 1000s等等。

所有最好的:)

+0

非常感謝!出於某種原因,日誌不顯示。你知道爲什麼嗎?這裏是: http://snag.gy/MzFxG.jpg –

+0

試試這個。 int timeRemaining = 20000 - millisUntilFinished; timeRemaining =(int)MathUtils.round((double)timeRemaining,-3); Log.d(「剩餘時間」,(timeRemaining%1000)+「剩下秒數」); –

+0

謝謝,我標記你最好的答案,並喜歡你的答案! –