值圖我想繪製了我的Time
在x-axis
應用和y軸上的值的Time vs Value
圖爲此我使用ChartView
https://github.com/nadavfima/ChartView。但我在將Time
插入x-axis
時遇到問題,因爲它只接受整數。我如何擺脫這個問題?我有「dd-MMM-YYYY h:mm:ss」格式的時間值。嘗試使用achartengine
但不滿意。任何幫助將深表謝意。時間與android系統
在此先感謝。
值圖我想繪製了我的Time
在x-axis
應用和y軸上的值的Time vs Value
圖爲此我使用ChartView
https://github.com/nadavfima/ChartView。但我在將Time
插入x-axis
時遇到問題,因爲它只接受整數。我如何擺脫這個問題?我有「dd-MMM-YYYY h:mm:ss」格式的時間值。嘗試使用achartengine
但不滿意。任何幫助將深表謝意。時間與android系統
在此先感謝。
您需要將時間轉換爲雙精度以便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);
是的,我試過將時間轉換爲Double,並繪製了圖形,但無法將x軸上的標籤更改回時間。 –
您是否創建了一個LabelAdapter類?你叫「chartView.setBottomLabelAdapter」嗎?它是如何失敗的?編譯它有問題嗎? 'getView'方法不會被調用嗎? –
給它的整數? –