如何使用滚动TransitionStyle阻止UIPageViewController上的轻击手势

时间:2018-11-13 07:32:38

标签: ios swift uipageviewcontroller

我想阻止点击手势(完全是左边框,但是两者都很好,我只需要为其添加按钮),就可以在UIPageViewController中更改页面。

我已经在'viewDidLoad'方法中尝试过此解决方案:

for recognizer in gestureRecognizers {
    if recognizer is UITapGestureRecognizer {
        recognizer.isEnabled = false
    }
}

但是它仅在将TransitionStyle设置为Page Curl的情况下有效,在我的情况下,我需要使用Scroll TransitionStyle

Ps。我还发现在UIPageViewController实现中有一条评论,gestureRecognizers仅在过渡样式为UIPageViewControllerTransitionStylePageCurl时被填充,因此将需要更大的“ hack”,希望您能为我提供帮助。 / p>

Pps。是的,我找到了这个-UIPageViewController returns no Gesture Recognizers in iOS 6。解决方案,但是它已经很老了并且在objC中,我很高兴在这里使用Swift。

Ppps。在dataSource上设置nil无效-我需要滑动手势。

1 个答案:

答案 0 :(得分:0)

您需要实现UIGestureDelegate,然后在检测到手势时声明动作。

我认为here可以看到很好的示例