21

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

谢谢

4

3 回答 3

35

尝试循环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
    }
}
于 2012-02-16T23:07:17.600 回答
1

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

    for recognizer in pageViewController.gestureRecognizers as! [UIGestureRecognizer] {
        if recognizer is UITapGestureRecognizer {
            recognizer.enabled = false
        }
    }
于 2015-08-10T09:06:01.323 回答
0

SWIFT 4.2 添加到 viewDidLoad()

for recognizer in self.gestureRecognizers {
            if recognizer is UITapGestureRecognizer {
                recognizer.isEnabled = false
            }
        }
于 2018-11-03T10:42:50.507 回答