我的要求是在Android中的页面中显示饼图和条形图。为此,我使用以下内容生成两个视图: -
ChartFactory.getBarChartView(getActivity(),buildBarDataset(titles,values),renderer,Type.DEFAULT)
ChartFactory.getPieChartView(getActivity(),categorySeries,defaultRenderer)
我可以单独显示它们。但我需要在滚动的单个页面中显示两个视图。我怎么能实现这个?
答案 0 :(得分:2)
只需创建一个类似的布局:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >
<LinearLayout
android:id="@+id/view1"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="1" />
<LinearLayout
android:id="@+id/view2"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="1" />
</LinearLayout>
在2个变量graph1和graph2中保存调用ChartFactory.getBarChartView()和ChartFactory.getPieChartView()的结果
然后在代码中将2个图表添加到布局
LinearLayout view1 = (LinearLayout)findViewById(R.id.view1);
LinearLayout view2 = (LinearLayout)findViewById(R.id.view2);
view1.removeAllViews();
view1.addView(graph1);
view2.removeAllViews();
view2.addView(graph2);
在我的解决方案中,两个图表都显示在一个页面上如果您希望每个图表填充一个屏幕,这可能会有所帮助:
scrollable linearlayout with weights bigger than screen in android