MPAndroidChart:水平条形图仅在第一次显示时离开屏幕运行
我正在使用MPAndroidChart:水平条形图仅在第一次显示时离开屏幕运行,android,mpandroidchart,Android,Mpandroidchart,我正在使用水平条形图显示来自API调用的数据。第一次运行呼叫时,图表会在显示时从屏幕上消失: public void displayBarChart() { barChart.setData(getBarData()); barChart.setTouchEnabled(false); barChart.setFitBars(true); barChart.getLegend().setEnabled(false); barChart.getDescrip
水平条形图显示来自API调用的数据。第一次运行呼叫时,图表会在显示时从屏幕上消失:
public void displayBarChart() {
barChart.setData(getBarData());
barChart.setTouchEnabled(false);
barChart.setFitBars(true);
barChart.getLegend().setEnabled(false);
barChart.getDescription().setEnabled(false);
configureXAxis();
configureYAxis();
barChart.invalidate(); // refresh
}
如果我重新提交呼叫,图表现在大小正确:
当我的应用收到成功的网络响应时,将执行以下代码(不显示帮助器方法):
条形图的布局代码为:
<com.github.mikephil.charting.charts.HorizontalBarChart
android:id="@+id/bar_chart"
android:layout_width="match_parent"
android:layout_height="80dp"
android:layout_marginBottom="8dp" />
有人知道为什么重新排序对于条形图的正确显示很重要吗
private void configureXAxis() {
final XAxis xAxis = barChart.getXAxis();
xAxis.setDrawAxisLine(false); // no axis line
xAxis.setDrawGridLines(false); // no grid lines
xAxis.setPosition(XAxis.XAxisPosition.BOTTOM);
xAxis.setLabelCount(2);
xAxis.setTextSize(16f);
xAxis.setValueFormatter(new IAxisValueFormatter() {
@Override
public String getFormattedValue(final float value, final AxisBase axis) {
return labels.get((int) value);
}
});
}