我在我的通用iOS应用程序中使用UISplitView,我只有一个故事板。我能够实现除少数事物之外的所有功能,
在iPad中我希望主视图始终可见,因此我使用了委托
-(BOOL)splitViewController:(UISplitViewController *)svc shouldHideViewController:(UIViewController *)vc inOrientation:(UIInterfaceOrientation)orientation
{
return NO;
}
但是主视图仍然隐藏在纵向模式下。同样在iPhone中,应用程序使用带导航后退按钮的DetailView启动。我希望iPhone应用程序首先显示MasterView。我已经浏览了几个示例,例如this或this,但没有解决我的问题。
我使用的是Objective C而不是Swift。
答案 0 :(得分:3)
查看documentation for UISplitViewControllerDelegate
DetachCurrentThread
已在iOS8中弃用,您必须设置- (BOOL)splitViewController:(UISplitViewController *)svc shouldHideViewController:(UIViewController *)vc inOrientation:(UIInterfaceOrientation)orientation
:
preferredDisplayMode
对于显示详细视图控制器而非主控的iPhone应用程序,请实现controller.preferredDisplayMode = UISplitViewControllerDisplayModeAllVisible;
方法:
UISplitViewControllerDelegate
答案 1 :(得分:0)
您可以通过用户运行时变量设置此属性,如下所示:
Key Path Type Value
preferredDisplayMode Number 2
以下是首选显示模式的值
case automatic = 0
case primaryHidden = 1
case allVisible = 2
case primaryOverlay = 3