我在 iOS 应用程序上使用SciChart 。
是否可以SCIRolloverModifier
仅在点击手势时显示?我想避免这样的事实,即在拖动图表时,它会自动显示翻转。
谢谢!!
现在有一个如何在 SciChart iOS v2.x 中执行此操作的示例,位于SciChart.iOS.Examples Github 存储库
SciChart.iOS.Examples > v2.x > 沙盒 > LeaveRolloverOnScreen_Swift
这是如何工作的。
有一个名为 CustomRollover 的类继承了 SCIRolloverModifier。这将覆盖 onPanGesture 并且仅在手势操作尚未结束时调用基类 onPanGesture(它会在触摸结束时移除翻转)
class CustomRollover : SCIRolloverModifier {
override func onPanGesture(_ gesture: UIPanGestureRecognizer!, at view: UIView!) -> Bool {
if (gesture.state != .ended) {
return super.onPanGesture(gesture, at: view)
}
return true ;
}
}
在主视图中有一个按钮,可将 Rollover 添加到图表并通过从 SCIChartSurface.ChartModifiers 集合中添加/删除 CustomRollover 将其删除。
let button = UIButton(frame: CGRect(x: 100, y: 5, width: 200, height: 50))
button.setTitle("Add/Remove Rollover", for: .normal)
button.addTarget(self, action: #selector(buttonAction), for: .touchUpInside)
self.addSubview(button)
@objc func buttonAction(sender: UIButton!) {
rollover.isEnabled = !rollover.isEnabled
if (rollover.isEnabled) {
self.chartModifiers.add(rollover)
} else {
self.chartModifiers.remove(rollover)
}
}
这是从屏幕上删除翻转的最简单方法,它可以让您决定何时删除或隐藏它。