在 MPAndroidChart 框架的Android版本中,有一种名为onChartGestureEnd
的方法会在触摸时触发(例如,当您完成拖动折线图时)。
此框架的iOS版本中是否存在此方法的类似内容(图表)。如果没有那么我怎样才能处理拖动结束(可能是UIPanGestureRecognizer
)而不会损坏我图表的当前拖动行为?
答案 0 :(得分:1)
可能的解决方案之一是在图表中添加UIPanGestureRecognizer
并添加手势完成后所需的任何行为:
@IBAction func didDragChart(_ sender: UIPanGestureRecognizer) {
switch sender.state {
case .ended, .cancelled:
// Whatever you want to do when finished dragging.
default:
break
}
}
然而,这还不够,因为此框架中的图表已经具有拖动的默认行为。要允许多个相同类型的手势(在我们的情况下它可以拖动),您可以创建图表的新子类并覆盖此方法:
override func gestureRecognizer(_ gestureRecognizer: NSUIGestureRecognizer, shouldRecognizeSimultaneouslyWith otherGestureRecognizer: NSUIGestureRecognizer) -> Bool {
return true
}
现在两者都通过拖动滚动图表(默认行为)和手势识别器将一起工作。