点按SciChart SCIRolloverModifier

时间:2018-08-30 09:22:16

标签: ios swift scichart

我在iOS应用程序上使用SciChart

是否可以仅在轻击手势上显示SCIRolloverModifier?我想避免这种事实,即在拖动图表时,它会自动显示过渡。

谢谢!

1 个答案:

答案 0 :(得分:0)

现在在SciChart.iOS.Examples Github存储库中的SciChart iOS v2.x中有一个执行此操作的示例

SciChart.iOS.Examples > v2.x > Sandbox > 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 ;
    }
}

在主视图中,有一个按钮,该按钮可将滚动条添加到图表中,并通过从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)
        }
    }

这是从屏幕上删除过渡的最简单方法,它使您可以决定何时要删除或隐藏过渡。