Android:如何在Achartengine的图表下创建列表?

时间:2011-10-12 11:36:49

标签: android charts android-listview achartengine android-linearlayout

Android:嗨,我正在使用AchartEngine在我的App中显示图表 我已尝试过不同的方法来显示此图表,并在我的应用程序中的图表下显示一些列表,但我没有。我不知道如何使用这些图表在xml中定义布局。我可以在不使用xml布局的情况下显示图形。

非常感谢提前。

此致 哈利。

2 个答案:

答案 0 :(得分:1)

如果您的项目中引用了Achartengine(如果包含源代码,则会编译),那么您应该会在eclipse布局设计器中看到该视图。

只需将视图拖到您的布局上即可。

或者,您可以动态创建布局,但这需要一些额外的工作和研究

答案 1 :(得分:1)

AchartEngine有一个类ChartFactory,用于创建视图或意图。

因此,您可以设置在xml中所需位置返回的视图。

这样你就可以创建一个xml,这里我有一个包含我的Graph的LinearLayout。

<?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">
    <ListView android:id="@+id/list_view" android:layout_width="fill_parent"
        android:layout_height="wrap_content" />

    <LinearLayout android:id="@+id/myLinearLayout"
        android:layout_width="wrap_content" android:layout_height="wrap_content">
    </LinearLayout>
</LinearLayout>

现在,在Activity类中,您可以通过获取LinearLayout的id并将视图添加到LinearLayout来显示Graph。在ListView的onItemClick()中显示图表。

    XYMultipleSeriesRenderer renderer = Bar_Chart.getBarDemoRenderer();
    linear_layout.removeAllViews();
    View mView = ChartFactory.getBarChartView(this, Bar_Chart.getBarDemoDataset(), renderer, Type.DEFAULT);
    mView.setLayoutParams(new LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT) );
    linear_layout.addView(mView);