暂时禁用用户与 ViewController 的交互

Chr*_*mer 2 objective-c uiviewcontroller

我使用主视图控制器和导航视图控制器。如果用户使用导航,则导航视图控制器占据屏幕的 80%,主视图控制器占据另外 20%。在这种情况下,用户不应与主 ViewController 交互。

如何暂时禁用与 Main ViewController 的交互?


编辑:这声明了进一步的问题:

这部分工作正常。现在,如果导航处于打开状态,用户将无法与 MainViewController 交互,但这会产生另外两个问题:

问题:用户可以在 MainView 的位置(右侧 App 的 20%)与 NavigationView 进行交互。用户不应该进行值得较低 NavigationController (Navigation) 的交互

问题:用户无法在 MainView 的 20% 上拖动以关闭 NavigationView 并完整地打开 MainView。

我认为这可能是禁用与 MainView 下分层的所有对象的交互的一个原因。如果我在另一个 ViewController 的函数中执行此操作,这可能吗?困难在于,我应该为不同类型的“MainViews”执行此操作。有时它只包含一个 TableViewController,有时它包含一组 UIButton,等等。

Mic*_*ann 6

mainViewController.view.userInteractionEnabled = NO 应该为你工作。

这会关闭视图对触摸的响应。

  • @Antonio,这是一样的 (2认同)