使用mpandroid更改折线图中的圆颜色

使用mpandroid更改折线图中的圆颜色,android,mpandroidchart,Android,Mpandroidchart,我试着在折线图上听一个特定圆圈的点击,这样它(点击的圆圈)的颜色在点击时就会改变 以下是我尝试过的: LineDataSet set1 = new LineDataSet(yVals, "DataSet 1"); @Override public void onValueSelected(Entry entry, int i) { set1.setCircleColorHole(Color.GREEN); } 目前正在发生的是,点击一下,所有圆圈的颜色都在改变。应该发生的是,只

我试着在折线图上听一个特定圆圈的点击,这样它(点击的圆圈)的颜色在点击时就会改变

以下是我尝试过的:

LineDataSet  set1 = new LineDataSet(yVals, "DataSet 1");

@Override
public void onValueSelected(Entry entry, int i) {
    set1.setCircleColorHole(Color.GREEN);  
}

目前正在发生的是,点击一下,所有圆圈的颜色都在改变。应该发生的是,只有已单击的圆圈-其颜色应该更改。

您当前正在为整个数据集设置
set1
的颜色。这就是为什么您报告所有圆圈的颜色都在变化。您需要这样做,但只针对单个实体

根据的文档,可以覆盖方法
onValueSelected
,以包含额外参数
Highlight
。免责声明我以前从未使用过这个图形库,所以可能需要一些实验

直接取自此处找到的
图表
的源代码(撰写本文时的第562行):

理论上,这将突出显示选定的值。执行类似操作的其他方法具有以下特征:

public void highlightValue(int xIndex,int dataSetIndex)

public void highlightvalue(突出显示[]高)


public void highlightValue(Highlight high,boolean callListener)

我对android几乎一无所知,但它看起来像是为整个数据集而不是单个项目调用
setFillColor
。但是如何为单个实体设置circlecolorhole呢?
 /**
 * Highlights the values represented by the provided Highlight object
 * This DOES NOT generate a callback to the OnChartValueSelectedListener.
 *
 * @param highlight contains information about which entry should be highlighted
 */
public void highlightValue(Highlight highlight) {
    highlightValue(highlight, false);
}