强制从饼图中取消选择切片

Force deselecting a slice from pie chart

我正在寻找一种强制取消选中饼图切片的方法。当您点击饼图外时它会自动取消选择,但是我想知道是否有一种方法可以在按钮操作中取消选择它?

我有各种按钮显示相同数据的过滤版本,如果在您单击按钮时选择了一个切片,它会保持选中状态。

任何帮助都会很棒。

谢谢

在切片 selected/highlighted 时调用的函数 chartValueSelected 中,我设置了一个包含 DataSetIndex 的全局变量:

var dataSetIndexToDeselect : Int = 0
func chartValueSelected(chartView: ChartViewBase, entry: ChartDataEntry, dataSetIndex: Int, highlight: ChartHighlight) {
    dataSetIndexToDeselect = dataSetIndex  
}

单击按钮时,我通过在 IBAction 中添加以下行取消突出显示该切片:

@IBAction func buttonClick(sender: AnyObject) {
    pieChartView.highlightValue(xIndex: -1, dataSetIndex: dataSetIndexToDeselect, callDelegate: false)
}

xIndex 上的“-1”导致不再选择 'dataSetIndexToDeselect' 值。

 pieChart.highlightValue(nil)

这对我有用。 我在 Charts (3.0.2)Swift 3XCode 8.3.3

希望这对某人有所帮助。