2011-02-08 80 views
0

我計算中我有一個交易開始日期和結束日期爲網上購物創建應用..Android的運行定時器

從這兩個日期,我想得出剩餘這筆交易在幾秒鐘內結束時間基礎..我計算出的剩餘天,秒,小時,分鐘..

我想顯示日剩餘時間:小時:分鐘:秒格式...

雖然我移動到下一個活動這次應該在後臺運行,其中第二個必須每秒更新一次..

如果我再次移動此活動,我想顯示更新的剩餘時間...

同樣在我的UI中,剩餘時間必須逐秒減少。

回答

1

而不是建立一個服務,我會創建一個Handler更新您的用戶界面。 您現在可以撥打sendEmptyMessageDelayed延遲1000毫秒。在handleMessage方法中,您可以更新您的UI並再次調用sendEmptyMessageDelayed。

不要指望Android正確地打電話給你。重新計算剩餘的時間,而不是僅僅減少一個。

如果活動位於後臺,則不應更新UI,因爲活動已暫停。只需在onPause方法中禁用整個更新過程,並在您的onResume方法中重新啓用它。如果你的方法在系統中被銷燬,你的onCreate方法將被再次調用,你必須重新計算實際的剩餘時間。

在實施此更改之前,請確保您瞭解ActivityLifecycle過程。

+0

謝謝你的回覆我明白了。 – Venky 2011-03-04 08:36:12

0

聽起來像你需要一個服務和一個活動,服務執行計時操作和活動提供時間信息。