2013-05-20 71 views
0

有一些對象每天都有一定的重複時間(即12:30 PM,14,16,18 ...);我想計算系統當前時間和每個時間點之間的差異以找到最近的一個,並顯示差異。我在這裏面臨2個困惑:定義常規時間實例,獲取它們之間的差異和當前時間Android上的時間

  1. 如何定義這些時鐘詳細吾身,即重複,在Android的Time類?我剛剛發現這種格式在參考time.set(4, 10, 2007)

  2. 我應該使用compare(Time a, Time b)找到最接近的時間?雖然我不確定細節。

對不起,初級水平的問題

回答

1

看一看的喬達日期/時間庫,並專門本地時間類,它代表一天,不依賴於特定日期的時間。請參閱http://joda-time.sourceforge.net/apidocs/org/joda/time/LocalTime.html

您可以使用LocalTime類的方法轉換爲當天的時間,然後進行比較。

+0

謝謝,我做這樣的事情: 'DateTime now = new DateTime(); \t \t LocalTime object = new LocalTime(17,05); \t \t DateTime test = object.toDateTimeToday(); \t \t int diff = now.compareTo(test);' 對於比較當前時間和單個對象的所有可用時間,您有什麼建議?雖然循環也許? – DummyBeginner

+1

是的,我認爲你必須循環所有「可用」時間,比較每個時間,並選擇最小正差異。 – GreyBeardedGeek

+0

謝謝。只是一個問題:當試圖表現出差異來自比較時;輸出只是「1」。以下是其餘代碼: 'String a = Integer.toString(diff); \t \t TextView timev =(TextView)findViewById(R.id.time); \t \t \t \t timev.setText(a);' – DummyBeginner

相關問題