折れ線グラフをすばやくつくりましょう.
Introducing Spark — Robinhood Engineering — Medium
手順
1. ライブラリを追加する.
compile ‘com.robinhood.spark:spark:{latest release}’
2. View を設置する.
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<com.robinhood.spark.SparkView
android:id="@+id/sparkview"
android:layout_width="match_parent"
android:layout_height="200dp"
app:spark_lineColor="@color/colorAccent"
app:spark_scrubEnabled="true"
app:spark_animateChanges="true"/>
...
3. データ float[] を渡す Adapter を作る.
public class MyAdapter extends SparkAdapter {
private float[] yData;
public MyAdapter(float[] yData) {
this.yData = yData;
}
@Override
public int getCount() {
return yData.length;
}
@Override
public Object getItem(int index) {
return yData[index];
}
@Override
public float getY(int index) {
return yData[index];
}
}
4. Adapter を View にセットして, ゲージをタッチしたときの Listener をつける.
SparkView sparkView = (SparkView) findViewById(R.id.sparkview);
sparkView.setAdapter(new MyAdapter(data));
sparkView.setScrubListener(new SparkView.OnScrubListener() {
@Override
public void onScrubbed(Object value) {
if (value == null) {
scrubInfoTextView.setText(R.string.scrub_empty);
} else {
scrubInfoTextView.setText(getString(R.string.scrub_format, value));
}
}
});
5. 出来上がり
数値の推移を確認するには折れ線グラフは非常にわかりやすく, タップしてその時点の数値も簡単に表示できてしまうこのライブラリは非常に重宝するものだと思われます.
robinhoodmarkets/spark: A simple Android sparkline chart view.