我可以禁用 UIPageViewController 的页面边框手势识别器吗?并保持刷卡?

Posted

技术标签:

【中文标题】我可以禁用 UIPageViewController 的页面边框手势识别器吗?并保持刷卡?【英文标题】:Can I disable the UIPageViewController's page border gesture recognizers? And keep the swipe one? 【发布时间】:2012-02-16 22:44:56 【问题描述】:

我看到我可以移除所有 UIPageViewController 手势,但如果我只想移除边缘上的点击手势怎么办?并保持滑动手势?这可能吗?

谢谢

【问题讨论】:

【参考方案1】:

尝试循环访问pageViewController.gestureRecognizers,禁用任何点击识别器。

目标-C:

for (UIGestureRecognizer *recognizer in pageViewController.gestureRecognizers) 
    if ([recognizer isKindOfClass:[UITapGestureRecognizer class]]) 
        recognizer.enabled = NO;
    

斯威夫特:

for recognizer in pageViewController.gestureRecognizers 
    if recognizer is UITapGestureRecognizer 
        recognizer.isEnabled = false
    

【讨论】:

注意,这只适用于 UIPageViewControllerTransitionStylePageCurl。 它在 ios 6 上对我有用,同时使用 UIPageViewControllerTransitionStylePageCurl 和 UIPageViewControllerTransitionStyleScroll【参考方案2】:

如果您需要在 Swift 中执行此操作:

    for recognizer in pageViewController.gestureRecognizers as! [UIGestureRecognizer] 
        if recognizer is UITapGestureRecognizer 
            recognizer.enabled = false
        
    

【讨论】:

【参考方案3】:

斯威夫特 4.2 添加到 viewDidLoad()

for recognizer in self.gestureRecognizers 
            if recognizer is UITapGestureRecognizer 
                recognizer.isEnabled = false
            
        

【讨论】:

以上是关于我可以禁用 UIPageViewController 的页面边框手势识别器吗?并保持刷卡?的主要内容,如果未能解决你的问题,请参考以下文章

为啥我可以输入禁用的 EditText?

Vimeo API - 我可以禁用嵌入式 Vimeo 视频的一些键盘快捷键而不是禁用所有快捷键吗?

为啥我可以禁用但不能启用可丢弃功能?

有啥方法可以禁用/启用我的 iphone 应用程序的通知

我可以禁用打印页面 x of y 对话框吗?

我可以在 iOS 中禁用主屏幕捏合吗?