Android のGraphViewライブラリには、グラフを作成するための View である GraphView クラスがあります。この抽象クラスは LinearLayout を拡張するため、次のように LinearLayout をネストすることでレイアウトにグラフを含めることができます。
xml レイアウト:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/mainLayout">
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Hello World!" />
<LinearLayout
android:id="@+id/subLayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
MainActivity.java:
public class MainActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
GraphViewData[] data = new GraphViewData[num];
double v = 0;
for (int i = 0; i < 10; i++) {
v += 0.1;
data[i] = new GraphViewData(i, Math.sin(v));
}
GraphViewSeries seriesSin = new GraphViewSeries("Sinus", null, data);
GraphView graphView = new LineGraphView(this, "DemoGraphView");
graphView.addSeries(seriesSin);
graphView.setViewPort(2, 10);
LinearLayout layout = (LinearLayout) findViewById(R.id.subLayout);
layout.addView(graphView);
}
}
私は現在 LinearLayouts をネストしていますが、レイアウト ファイルにグラフを含めるためのより良い方法があるかもしれません。TextView または Button ビューを配置するのと同じように?