java - onValueSelected() 没有在 BarChart 中调用,而是 onNothingSelected() 每次单击任何条形图或 BarChart 中的任何位置时都会调用
问题描述
我OnChartValueSelectedListener
为 BarChart 设置,但是当我单击任何条形图或 BarChart 中的任何位置时,只有onNothingSelected()
调用和onValueSelected
不调用,甚至一次都没有。我想要回电,告诉我选择了哪个栏。
我尝试设置 setOnChartGestureListener() 但这也不起作用。请帮我解决问题。
mBarChart.setOnChartValueSelectedListener(this);
mBarChart.setHighlightFullBarEnabled(true);
ArrayList<BarEntry> yValsProp1 = new ArrayList<>();
for (int i = 0; i < mFeeAmount.size(); i++) {
float f1 = mFeeAmount.get(i).floatValue();
float f2 = mFineAmount.get(i).floatValue();
yValsProp1.add(new BarEntry(i, new float[]{f1, f2}));
}
//Setting data to the bar
BarDataSet barDataSet = new BarDataSet(yValsProp1, " ");
barDataSet.setColors(getColors());
barDataSet.setHighlightEnabled(false);
barDataSet.setDrawValues(true);
BarData barData = new BarData(barDataSet);
barData.setBarWidth(0.55f);
mBarChart.setScaleEnabled(false);
mBarChart.getDescription().setEnabled(false);
mBarChart.getLegend().setEnabled(false);
//hiding Axis lines
mBarChart.getAxisLeft().setDrawAxisLine(false);
mBarChart.getAxisRight().setDrawAxisLine(false);
mBarChart.setFitBars(false);
mBarChart.setDrawValueAboveBar(true);
mBarChart.setData(barData);
mBarChart.setClipValuesToContent(false);
mBarChart.setVisibleXRange(6, 6);
mBarChart.getLegend().setForm(Legend.LegendForm.CIRCLE);
mBarChart.invalidate();
解决方案
我得到了我做错的地方,我刚刚删除了这一行
barDataSet.setHighlightEnabled(false);
默认情况下它会是真的。
推荐阅读
- r - R 等效于 SAS put 语句
- python - VisualCode - 浮点对象不可迭代
- java - 为什么要在 Docker 中运行 JVM 进程
- amazon-web-services - 如何关系化包含数组的 JSON
- javascript - 根据文本选择选择选项
- jquery - jquery插件的优化
- jquery - 如何使用 jquery 在同一行显示来自 json_encode 数组的两个值?
- go - golang RFC3339Nano 时间戳可以可靠地转换为 Unix 时间戳吗?
- c - 如何读取输入文件并将整数存储到C中的数组中
- ruby-on-rails - 如何在测试之前停止 Rspec 删除测试数据库