如何在splitViewController中关闭主视图控制器

时间:2015-11-24 17:39:49

标签: ios objective-c uisplitviewcontroller

我有一个应用了分割视图控制器的应用程序。我还有一个覆盖特征集合的设置,因此所有设备都设置为常规大小类(而不是iPhone的紧凑型)。

我在应用中也有一个允许用户切换“拆分视图”的设置。这只会将targetDisplayModeForActionInSplitViewController的返回值从UISplitViewControllerDisplayModeAllVisible切换为UISplitViewControllerDisplayModeOverlay

我的大多数视图控制器都是通过故事板中的segue加载的,但有些是以编程方式加载的(例如[self presentViewController ...])。

我遇到的问题是当显示模式设置为Overlay时,当以编程方式加载任何视图时,主视图控制器不会崩溃。我试过用类似问题的代码解雇它,但没有运气。有人知道怎么做吗?

1 个答案:

答案 0 :(得分:0)

为其他遇到同样问题的人解决这个问题。手动将首选显示模式设置为隐藏将自动隐藏视图控制器。在我的拆分视图控制器类中,我只需添加

dbHelper

并在NSNotificationCenter注册为观察员。每当我需要关闭视图控制器时,我只需调用该函数,它就会隐藏它!