Ceci est une FAQ pour AChartEngine. L'application de démonstration d'AChartEngine est disponible pour téléchargement ici : Démonstration d'AChartEngine
Dans le code source de la démo, vous pouvez voir un exemple de la manière d'intégrer un graphique dans une vue existante.
En fait, dans le fichier .xml du descripteur d'activité, nous avons défini les éléments suivants comme espace réservé pour le graphique. Bien sûr, d'autres composants de l'interface utilisateur vont de pair avec cette disposition :
ChartDemo/layout/xy_chart.xml près de la ligne 27
<LinearLayout
android:id="@+id/chart"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="horizontal" />
Nous définissons une variable locale :
ChartDemo/src/org.achartengine.chartdemo.demo.chart/XYChartBuilder.java près de la Ligne 68
private GraphicalView mChartView;
Nous l'instancions sur la méthode onResume() de l'activité :
ChartDemo/src/org.achartengine.chartdemo.demo.chart/XYChartBuilder.java près de la ligne 163
protected void onResume() {
super.onResume();
if (mChartView == null) {
LinearLayout layout = (LinearLayout) findViewById(R.id.chart);
mChartView = ChartFactory.getLineChartView(this, mDataset,
mRenderer);
layout.addView(mChartView, new LayoutParams
(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
...
} else {
mChartView.repaint();
}
}
Chaque fois que de nouvelles données sont ajoutées (lorsque l'utilisateur appuie sur le bouton "Add" dans notre cas, un nouveau point est ajouté dans la série actuelle et :
ChartDemo/src/org.achartengine.chartdemo.demo.chart/XYChartBuilder.java près de la ligne 147
if (mChartView != null) {
mChartView.repaint();
}