我的应用程序有一个滑出导航设置,这里显示的视图(左和中央)都是child view controllers的main view controller.,现在我尝试在child view controller视图中的UIView中使用放大镜。然而,child view controller和main view controller都有手势识别器。
我原本希望在所需的exclusiveTouch上将UIView设置为真,但这并不能做到这一点。当我只想让包含的main view controller child view controller 只接收到它们时,如何才能将应用程序放置在这样的状态中:当我希望包含的 UIView 只接收到它们时,和都不会收到这些内容(我正在考虑关闭/关闭按钮)?,我需要的东西可以包含在一个方法中,而不是颠覆我的整个体系结构。谢谢你的建议
附注:我很乐意提供代码,但是会有很多代码来显示幻灯片控制器的实现,等等。我很乐意发布任何请求。
发布于 2015-07-03 14:28:30
不确定这是否有效..。但是,您可以尝试添加一个TapGestureRecognizer,该处理程序在进入mainViewController.view和childViewController.view状态时不对exclusiveTouch和childViewController.view做任何操作,然后在退出exclusiveTouch状态时确保将其删除。
我认为,UIView上最顶层的手势识别器是在该视图上路由所有手势的,因此这应该可以防止该手势被堆栈中的其他识别器拾取和处理。
试试这个,让我知道它是怎么工作的。
发布于 2015-07-06 14:42:55
最简单的解决方案是禁用所有手势识别器,而不更改其他任何内容。然后,UIView确实捕捉到了这些触感。
https://stackoverflow.com/questions/31208643
复制相似问题