补充问题有很多答案,即如何防止在从 PrimaryOverLayRegular 接口(interface)更改时转换到 Compact,例如使用

func splitViewController(splitViewController: UISplitViewController, collapseSecondaryViewController secondaryViewController: UIViewController, ontoPrimaryViewController primaryViewController: UIViewController) -> Bool

就我而言,我有一部 iPhone 6+,详细 View 以纵向显示。当我将设备旋转到水平位置( CompactRegular )时,我希望主 View 保持隐藏状态。我已经尝试在很多地方将 preferredDisplayMode 设置为 .PrimaryHidden,但没有明显的影响。谷歌搜索一无所获。

最佳答案

不要覆盖 traitCollection ,而是在拆分 Controller 的父 View Controller 中使用 setOverrideTraitCollection:forChildViewController: 方法,就像在 Apple 的示例 AAPLTraitOverrideViewController.m 中一样

如果您的拆分 Controller 没有父级,那么在 Storyboard 中创建父级非常容易。添加一个新的 View Controller ,使其成为入口点,添加一个容器 View ,删除默认的嵌入 View ,而是向拆分 Controller 添加一个嵌入转场,并在 self.childViewControllers.firstObject 中设置 viewDidLoad 的覆盖。

关于ios - UISplitViewController:从 Compact 旋转到常规时如何防止扩展,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33151380/

10-11 02:40