UISplitViewController - 设置始终可见的主控制器

UISplitViewController - set always visible master controller when

我研究了拆分视图 (like this one) 的示例,效果很好。我只需要改变一种行为。当用户纵向 iPad 时,我希望主控制器和细节控制器都可见。它应该像 FB Messenger 或 Skype 一样工作。两个控制器并排放置,无法隐藏主控制器。这怎么可能呢?感谢帮助

额外问题:是否可以以某种方式将 iPad 肖像的行为设置为与 iPhone 肖像相同?如果我改变主意,我想在全屏显示详细信息,然后点击左侧导航栏按钮,我将在全屏显示主视图,并且没有细节可见。是我可能还是拆分视图决定了,我对此无能为力?

UISplitViewController 有一个名为 preferredDisplayMode 的 属性。您可以将其设置为以下任一值:

  1. UISplitViewControllerDisplayModeAutomatic
  2. UISplitViewControllerDisplayModePrimaryHidden
  3. UISplitViewControllerDisplayModePrimaryOverlay
  4. UISplitViewControllerDisplayModeAllVisible

您正在寻找 UISplitViewControllerDisplayModeAllVisible.

[self.splitViewController setPreferredDisplayMode:UISplitViewControllerDisplayModeAllVisible];

UISplitViewControllerDisplayModeAllVisible

The primary and secondary view controllers are displayed side-by-side onscreen.

Available in iOS 8.0 and later.

您可以在 Apple 的文档中阅读有关显示模式的更多信息here