我有两种方法可以解决这个问题。一,你可以看看UISplitViewControllerDelegate,特别是关于折叠和展开界面的部分。
另一种解决方案是覆盖您的尺寸集合,以便在 iPhone 和 iPad 上显示相同,因为没有任何东西折叠和展开,两个视图始终“存在”。您可以将拆分视图控制器设置为preferredDisplayMode
在 iPhone 上看起来不错的 Overlay。您需要做的就是添加
UITraitCollection* horizTrait = [UITraitCollection
traitCollectionWithHorizontalSizeClass:UIUserInterfaceSizeClassRegular];
UITraitCollection* vertTrait = [UITraitCollection
traitCollectionWithVerticalSizeClass:UIUserInterfaceSizeClassRegular];
UITraitCollection* childTraits = [UITraitCollection
traitCollectionWithTraitsFromCollections:@[horizTrait, vertTrait]];
[self setOverrideTraitCollection:childTraits forChildViewController:self.childViewControllers[0]];
到你的父类UISplitViewController
(如果没有父类,你必须创建一个。这可以只是一个简单的导航控制器)
编辑:我应该提到,上面的代码只是将设备的特征设置为所有设备的常规-常规。