仅有时拆分的拆分视图控制器?

Posted

技术标签:

【中文标题】仅有时拆分的拆分视图控制器?【英文标题】:Split view controller that is only sometimes split? 【发布时间】:2011-12-15 08:42:43 【问题描述】:

我正在开发一款 iPad 应用程序,该应用程序似乎很适合使用 Master / Detail UISplitViewController 进行纵向和配套细节控制器 / popover 进行导航。

但是...我有时也想在纵向中使用全屏的细节控制器,在这里也将主控器变成一个弹出框。

是否有任何最佳实践或示例代码来解释如何做到这一点?

UISplitViewController 是合适的根视图吗?

特别感谢任何专注于使用 ios 5 和 segues 的技巧。谢谢!

【问题讨论】:

【参考方案1】:

我发现这在 iOS 5 下是可能的。

在您的 UISplitViewController 委托中使用以下函数:

- (BOOL)splitViewController:(UISplitViewController *)svc shouldHideViewController:(UIViewController *)vc inOrientation:(UIInterfaceOrientation)orientation

    return YES;

即使在横向视图中也返回 YES,SplitViewController 将像在纵向视图中一样以弹出式界面运行。如果您想恢复正常的拆分视图行为,请使用此函数在横向中返回 NO。

【讨论】:

如何重新启用?在 iOS 5.1 中,这个方法只在开始时被调用一次,然后再也不会被调用。即使方向改变也不行。 @Chris:是的,我也面临同样的问题。你有解决这个问题的办法吗? @Tarun:是的,编写你自己的SplitViewController 并从现有的继承。然后你可以控制它何时显示。

以上是关于仅有时拆分的拆分视图控制器?的主要内容,如果未能解决你的问题,请参考以下文章

在 iOS 拆分视图控制器上推送新的视图控制器

将 segue 添加到拆分视图控制器

应用程序尝试以模态方式呈现拆分视图控制器(我的应用程序中没有拆分视图)

拆分视图控制器 segue 和连接

拆分视图控制器中的 iOS 静态页脚

从拆分视图控制器的详细视图中调用主视图控制器