触摸时显示和隐藏折线图突出显示

时间:2016-06-18 16:59:29

标签: ios-charts

我想只在手指在图表上时突出显示数据点,只要它从我想要调用的屏幕上抬起,或者简单地取消选择突出显示。

func chartValueNothingSelected(chartView: ChartViewBase) {
    print("Nothing Selected")
    markerView.hidden = true
}

我试图覆盖触摸结束,但还没有让它起作用。

2 个答案:

答案 0 :(得分:4)

您可以使用highlightEnabled属性关闭突出显示所有条形图/数据。

这样的例子是:

barChartView.data?.highlightEnabled = false

如果您仍希望能够突出显示值,但希望它们在触摸结束后自动取消选择,我还会在文档中找到另一个函数highlightValues(highs: [ChartHighlight]?)

  

提供null或空数组以撤消所有突出显示。

如果要取消选择所有值,请调用此方法,我相信这样可行。这方面的例子可能是:

let emptyVals = [ChartHighlight]()  
barChartView.highlightValues(emptyVals)

价: Charts Docs: highlightValues documentation

答案 1 :(得分:-1)

如果您不需要对可以使用的点击数据执行任何操作:

barChartView.data?.highlightEnabled = false

如果您想使用点按的数据点而不显示高亮线,您可以使用选择委托(不要忘记将ChartViewDelegate添加到您的班级):

yourChartView.delegate = self // setup the delegate

添加委托功能:

func chartValueSelected(_ chartView: ChartViewBase, entry: ChartDataEntry, highlight: Highlight) {
  // do something with the selected data entry here

  yourChartView.highlightValue(nil) // deselect selected data point
}