我也在为此而苦苦挣扎。由于我需要图表滚动,所以@ Entrabiter的解决方案对我无效。我唯一的解决方案是将图表视图的代表UIPanGestureRecognizer
分配给我的ViewController并实现UIGestureRecognizerDelegate
。
该解决方案在Swift中,但它在Objective-C中也应该可以正常工作。
class MyViewController: UIViewController, UIGestureRecognizerDelegate {
// MARK: Outlets
@IBOutlet weak var contentView: UIScrollView!
@IBOutlet weak var myChart: LineChartView!
override func viewDidLoad() {
super.viewDidLoad()
if let gestureRecognizers = myChart.gestureRecognizers {
for gestureRecongnizer in gestureRecognizers {
if gestureRecongnizer is UIPanGestureRecognizer {
gestureRecongnizer.delegate = self
}
}
}
}
}
的重要组成部分,是告诉gestureRecognizer认识到这两个滚动视图的panGestureRecognizer还有chartview的panGestureRecognizer。
// MARK: UIGestureRecognizerDelegate
func gestureRecognizer(gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWithGestureRecognizer otherGestureRecognizer: UIGestureRecognizer) -> Bool {
if otherGestureRecognizer == contentView.panGestureRecognizer {
return true
}
return false
}
工作。但现在我无法挖掘我的观点。有两种方法可以实现吗? – Entrabiter
@Erabrabiter你使用的图表库是什么? – rounak
使用ios图表http://cocoadocs.org/docsets/Charts/2.1.0/index.html – Entrabiter