我有一个具有LinearLayout的活动,我将我的图表放入其中:
...
mChart = ChartFactory.getCubeLineChartView(this, mDataset, mRenderer, 0.3f);
graphActivityLayout.addView(mChart, 1);
这填补了我的整个布局。如何指定图表的尺寸?我还没有找到任何办法。
我的onResume
方法检查mChart是否为空,如果没有,则调用它上面的重绘,否则设置图表数据并执行上面的代码片段。没有什么与我的问题有关。
答案 0 :(得分:1)
据我所知,图表视图的布局尺寸设置为" FILL_PARENT"作为默认值。这通常会占用线性布局的所有空间,并在同一布局中隐藏其他视图。 如果你在布局中只有一个其他视图(我猜你的代码片段中的位置0),其布局宽度/高度设置为" WRAP_CONTENT",设置任意非零就足够了图表视图的权重。这告诉线性布局使用剩余空间,而不是使用所有空间:
graphActivityLayout.addView(mChart, 1);
LinearLayout.LayoutParams layoutParams = (LinearLayout.LayoutParams) mChart.getLayoutParams();
layoutParams.weight = 1;
答案 1 :(得分:0)
我添加了一个新的LinearLayout,它包裹了我的图表,并将其高度设置为所需的高度。