【发布时间】:2015-07-24 02:08:21
【问题描述】:
我有一个 UIViewController 和 UIPageViewController 变量。
我正在尝试禁用 UIPageViewController 在屏幕上某些位置的滑动。我通过将UIViewController 设置为UIGestureRecognizerDelegate 并将UIPageViewController 委托中的手势识别器设置为self(UIViewController)来做到这一点。我似乎无法找到手势识别器的位置或为UIPageViewController 加载。
我已经尝试了这三个地方,但在 viewDidLoad 方法中都是空的:
println("gesture\(self.pageViewController!.gestureRecognizers)")
println("gesture\(self.view.gestureRecognizers)")
println("gesture\(self.pageViewController!.view.gestureRecognizers)")
更新*******************:
所以我发现一些 UIGestureRecognizers 隐藏在 navigationController 中,但是将它们添加为委托并运行下面的代码什么也没做。是不是因为我有错误的 UIGestureRecognizers。那里也有一个 UIPanGestureRecognizer。为什么我的页面控制器或页面控制器的视图中没有任何识别器?
func gestureRecognizer(gestureRecognizer: UIGestureRecognizer, shouldReceiveTouch touch: UITouch) -> Bool {
println("Should recieve touch")
return false
}
我得到“应该接收触摸”以打印到日志,但我返回 false 并且没有禁用滑动。我做错了什么?
【问题讨论】:
标签: ios swift uiviewcontroller uipageviewcontroller