2016-06-18 11 views

Antwort

2

Mit der Eigenschaft highlightEnabled können Sie alle Balken/Daten zusammen markieren.

Beispiel hierfür ist:

barChartView.data?.highlightEnabled = false 

Wenn Sie immer noch in der Lage sein wollen, Werte zu markieren, sondern wollen, dass sie automatisch deaktivieren, nachdem die Note beendet hat, fand ich auch eine andere Funktion highlightValues(highs: [ChartHighlight]?), die besagt, in der Dokumentation.

Geben Sie null oder ein leeres Array an, um alle Hervorhebungen rückgängig zu machen.

Rufen Sie dies, wenn Sie alle Werte abwählen möchten und ich glaube, das wird funktionieren. Beispiel hierfür könnte sein:

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

Ref: Charts Docs: highlightValues documentation

+0

Das ist großartig und ich stolperte auch zu auf diesem, aber ich habe nicht in der Lage sein zu finden, wo ich die Touch-Handler überschreiben können, oder speziell nur bestimmen, wann Berührung in beendeter in Bezug auf die Diagrammansicht. Jede Ressource oder Hilfe, die damit verbunden ist, würde sehr geschätzt werden. –

-1

Wenn Sie nichts tun müssen, um mit den Gewinde Daten können Sie verwenden:

barChartView.data?.highlightEnabled = false 

Wenn Sie verwenden möchten, den angetippten Datenpunkt ohne die Hervorhebungszeilen anzuzeigen, können Sie den Auswahldelegaten verwenden (vergessen Sie nicht, ChartViewDelegate zu Ihrer Klasse hinzuzufügen):

yourChartView.delegate = self // setup the delegate 

Add Delegatfunktion:

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

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