我正在尝试制作一个水平条形图,以覆盖整个父级布局,但不能覆盖整个父级布局。下面是我的代码-
HorizontalBarChart barchart = new HorizontalBarChart(activity);
barchart.setLayoutParams(new LinearLayout.LayoutParams(0, 110, weight));
ArrayList<BarEntry> entries = new ArrayList<BarEntry>();
entries.add(new BarEntry(86.0f, 0));
BarDataSet dataset = new BarDataSet(entries, "");
dataset.setColor(Color.parseColor("#E0E0E0"));
ArrayList<String> labels = new ArrayList<String>();
labels.add("86.0");
BarData bardata = new BarData(labels, dataset);
barchart.setData(bardata);
barchart.setDescription("");
Legend legend = barchart.getLegend();
legend.setEnabled(false);
YAxis topAxis = barchart.getAxisLeft();
topAxis.setDrawLabels(false);
YAxis bottomAxis = barchart.getAxisRight();
bottomAxis.setDrawLabels(false);
XAxis rightAxis = barchart.getXAxis();
rightAxis.setDrawLabels(false);
bottomAxis.setDrawLabels(false);
barchart.setPadding(-1, -1, -1, -1);
barchart.setBackgroundColor(Color.CYAN);
return barchart;
我希望我的水平条形图(barchart)填充整个蓝色区域。有人可以帮忙吗?
编辑:@PhilippJahoda我尝试了您的解决方案,但在首次启动时,它以与以前相同的方式显示,当我单击/触摸图表时,仅覆盖整个区域。您能告诉我为什么我必须触摸图表以使其充满整个空间。
首次启动时,它看起来像-
截屏:
单击后看起来像-
屏幕截图2:
最佳答案
如果尚未更新到该库的最新版本。
然后,仅从图表中删除所有偏移。在documentation中。
称呼:
chart.setViewPortOffsets(0f, 0f, 0f, 0f);