我正在用Java編寫一個簡單的計時器。它具有啓動和停止按鈕,以及文本視圖,顯示自定時器啓動以來經過了多長時間。如何從系統時間獲得時間增量?
它通過在System.currentTimeMillis()
中設置初始時間並在循環中每秒更新當前值來實現。
問題是,如果我在計時器運行時更改系統時間,則整個測量將失敗。例如,如果我將時間設置回一個月,則計時器顯示負值,因爲currentTimeMillis()
現在返回比初始值更小的值。
那麼,我該如何計算時間增量,這將與系統時間無關?讓這個解決方案跨平臺也會很好。
請發表你試過的代碼。 – asgs