2013-06-04 100 views
0

值圖我想繪製了我的Timex-axis應用和y軸上的值的Time vs Value圖爲此我使用ChartViewhttps://github.com/nadavfima/ChartView。但我在將Time插入x-axis時遇到問題,因爲它只接受整數。我如何擺脫這個問題?我有「dd-MMM-YYYY h:mm:ss」格式的時間值。嘗試使用achartengine但不滿意。任何幫助將深表謝意。時間與android系統

在此先感謝。

+0

給它的整數? –

回答

0

您需要將時間轉換爲雙精度以便ChartView可以使用它們,然後創建自己的LabelAdapter以在顯示標籤時將這些雙精度值轉換回時間格式。

例如,你可以使用這樣的代碼來獲得以毫秒爲單位的時間,假設你已經解析您的輸入格式爲年,月,日,等

Calendar calendar = new GregorianCalendar(year, month, day, hour, min, sec); 
double floatTime = calendar.getTimeInMillis(); 

舉一個例子如何創建一個LabelAdpater,看看包含ChartView的example code

在這個例子中,他們只是寫出標籤爲float這樣的:

labelTextView.setText(String.format("%.1f", getItem(position))); 

但是你可以很容易地做這樣的事情,而不是:

double floatTime = getItem(position); 
Calendar calendar = new GregorianCalendar(); 
calendar.setTimeInMillis((long)floatTime); 

SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss"); 
sdf.setTimeZone(TimeZone.getDefault());  
String stringTime = sdf.format(calendar.getTime()); 

labelTextView.setText(stringTime); 
+0

是的,我試過將時間轉換爲Double,並繪製了圖形,但無法將x軸上的標籤更改回時間。 –

+0

您是否創建了一個LabelAdapter類?你叫「chartView.setBottomLabelAdapter」嗎?它是如何失敗的?編譯它有問題嗎? 'getView'方法不會被調用嗎? –