我完全是这个网站的新手,但我已经喜欢了: - )
我通过搜索有关UIPageViewController的问题找到了它。
我有一个普通的UIPageViewController应用程序,我打开一个ModalViewController来设置一些设置......
现在问题:: - )
如果我点击ModalView右侧的完成按钮,要关闭它,PageViewController会转动页面,因为他认为他是指单击的意思; - )
只要我打开了ModalView,我可以禁用PageViewController GestureRecognizer吗?
是否有禁用和后来识别器的方法?
提前感谢您的帮助......
cu Matze
答案 0 :(得分:2)
您的UIPageViewController
会从其上显示的模态视图中偷取触摸,这似乎很奇怪。或许,除非您将模态视图嵌入 UIPageViewController
的内容中?
要回答您的问题 - 您可以通过枚举其gestureRecognizers
属性(NSArray
)来轻松禁用页面视图控制器的手势识别器:
for (UIGestureRecognizer *gr in [self.pageViewController gestureRecognizers]) {
[gr setEnabled:NO];
}
稍后使用setEnabled:YES
重新启用它们。
<强>更新强>
在iOS 6中添加了UIPageViewControllerTransitionStyleScroll
。 UIPageViewController
使用此转换样式的gestureRecognizers
在UIScrollView
返回的数组中不返回任何手势识别器。据推测,具有此转换样式的页面视图控制器使用底层的私有UIScrollView
实例(它的行为就像启用了分页的{{1}}一样),尽管我没有检查过这个。