ViewController 禁用交互 - iOS
Posted
技术标签:
【中文标题】ViewController 禁用交互 - iOS【英文标题】:ViewController disable interaction - iOS 【发布时间】:2013-07-11 17:14:08 【问题描述】:我决定从用户那里收集数据。我开始在 mainViewController 的顶部添加 viewController,如下图所示。 我的问题是用户可以与 mainViewcontroller 交互,在我的例子中是 mapKit。每当用户滚动选择器视图时,它也会影响按钮上的 mapViewController!
我不希望用户能够与 mainViewController 交互。
【问题讨论】:
你在地图视图上试过userInteractionEnabled = NO
吗?
您使用的是覆盖层而不是独立的视图控制器吗?如果您的弹出窗口的视图控制器已正确创建并正确处理触摸事件,则不应将事件传播到层次结构中的上方/之前的视图。也许您可以将弹出窗口设置为第一响应者,并且在被解雇之前不允许它退出第一响应者状态?
【参考方案1】:
您可以在显示叠加层时禁用mainViewController
的用户交互,如下所示:
mainViewController.view.userInteractionEnabled = NO;
【讨论】:
一旦用户年龄增长,我想转移到另一个 viewController,最好的方法是什么?【参考方案2】:另一种方法是截取 mainViewController 视图的屏幕截图,并将该图像用作性别和年龄集合视图的背景。这样做的好处是只需要显示一个视图控制器,也许可以节省内存。
【讨论】:
以上是关于ViewController 禁用交互 - iOS的主要内容,如果未能解决你的问题,请参考以下文章
iOS UIScrollViewKeyboardDismissModeInteractive 禁用文本字段交互
iOS 7.0 UITableView backgroundView 中的控件禁用了用户交互