我正在使用具有首选显示模式的ios8的新UISplitViewController。我的主分割视图是一个UITabBarController,里面有一个UINavigationController。我禁用了presentsWithSwipe
手势,而是在我的详细视图控制器中有一个按钮,用于在两个首选显示模式状态之间切换splitviewcontroller:UISplitViewControllerDisplayModeAllVisible和UISplitViewControllerDisplayModePrimaryHidden。
当我切换按钮以便两个视图控制器都可见时,我可以看到我的导航控制器显示它的tableview控制器。但是,当我单击tableviewcontroller中的一个单元格执行故事板segue到另一个视图控制器时,我收到以下错误:
Unbalanced calls to begin/end appearance transitions for <ReferenceTableViewController: 0x7fde50540d50>
我的设置是
SplitMasterViewController - &gt; UITabBarController - &gt; UINavigationController - &gt; ReferenceTableViewController - &gt; ReferenceDetailViewController
SplitDetailViewController - &gt; UINavigationController - &gt; MainViewController
基本上,我想在主视图控制器中设置动画,该视图控制器提供与MainViewController相关的信息。在MasterViewController中采取的操作不会替换DetailViewController,而是应该在MasterViewController框架内导航。有点像将iPhone与小型iPad并排放置,每个iPad都有独立内容。
但是,我没有在ReferenceTableViewController或RefernenceDetailViewController中调用任何视图外观方法。如果我覆盖任何外观方法,我总是调用super,所以我不确定错误来自哪里。有什么想法吗?