chartValueSelected never gets called

时光怂恿深爱的人放手 提交于 2019-12-12 04:28:25

问题


I utilize https://github.com/danielgindi/Charts in my project.

Here is my code, this is how I declare my ViewController class:

class ViewController: UIViewController, ChartViewDelegate

declaration of chartView

@IBOutlet weak var chartView: LineChartView!

inside viewDidLoad()

self.chartView.delegate = self

and this is how I implement delegate method

func chartValueSelected(chartView: ChartViewBase, entry: ChartDataEntry, dataSetIndex: Int, highlight: Highlight)
{
    print(dataSetIndex)
}

For some reason, when I swipe across the chart, this method never gets called. Any ideas why this might happen?

Thanks in advance


回答1:


As I may have expected, the problem was Swift 3 difference in method signature.

Swift 3

func chartValueSelected(_ chartView: ChartViewBase, entry: ChartDataEntry, highlight: Highlight) { ... }



回答2:


Check with a breakpoint if chatView is initialized in viewDidLoad and check its delegate, then check if the method which call the delegate has ever been called. You can use po chartView.delegate in the terminal screen Maybe you are not selecting the chart, this is not a touch up inside button, to call the selected method you have to set selected, if you want this to work like a button maybe there are an action called setHighlighted...



来源:https://stackoverflow.com/questions/40112484/chartvalueselected-never-gets-called

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!