0

https://github.com/nadavfima/ChartViewを使用している y 軸の値と値を使用して、Time vs Valueアプリのグラフをプロットしたいと考えています。しかし、整数のみを受け入れる ため、に挿入する際に問題に直面しています。この問題を解決するにはどうすればよいですか? 「dd-MMM-YYYY h:mm:ss」という形式の時間値があります。使ってみたが満足できない。どんな助けでも大歓迎です。Timex-axisChartView Timex-axisachartengine

前もって感謝します。

4

1 に答える 1

0

時間を double に変換して ChartView で使用できるようにし、独自の LabelAdapter を作成して、ラベルが表示されるときにそれらの double 値を時間形式に変換する必要があります。

たとえば、入力形式を年、月、日などに既に解析していると仮定すると、次のようなコードを使用して時間をミリ秒単位で取得できます。

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

LabelAdpater の作成方法の例については、ChartView に含まれるサンプル コードを参照してください。

その例では、次のようにラベルを 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);
于 2013-06-04T16:18:25.803 に答える