首先,感谢一个很棒的图书馆🚀
在此更改之后, chartViewDidEndPanning
不会在 3.5.0 中被调用:
https://github.com/danielgindi/Charts/pull/4271
如果有人感兴趣,我现在正在使用这个分支: https ://github.com/GetBlast/Charts/commit/22e8eca5af55e11c41644a498bc941dd859c2680 来自@tsorencraig
与LineChartView
的代表有同样的问题( chartViewDidEndPanning
没有被调用)。
当突出显示拖动结束时有一个新的委托方法来处理或者可能向现有的chartViewDidEndPanning
添加一个新参数来区分发生了哪个平移操作会很好。
是的,一个新的委托方法,拜托!
不好,但这个“解决方法”帮助了我:
let pan = lineChartView.gestureRecognizers?.first { $0 is UIPanGestureRecognizer }
pan?.addTarget(self, action: #selector(gestureRecognized(_:)))
<strong i="9">@objc</strong> func gestureRecognized(_ recognizer: UIPanGestureRecognizer) {
if recognizer.state == .ended || recognizer.state == .cancelled {
// Pan Ended
}
}
最有用的评论
是的,一个新的委托方法,拜托!
不好,但这个“解决方法”帮助了我:
let pan = lineChartView.gestureRecognizers?.first { $0 is UIPanGestureRecognizer } pan?.addTarget(self, action: #selector(gestureRecognized(_:)))
<strong i="9">@objc</strong> func gestureRecognized(_ recognizer: UIPanGestureRecognizer) { if recognizer.state == .ended || recognizer.state == .cancelled { // Pan Ended } }