UISplitViewController – 在viewDidLoad上显示主视图的弹出窗口

是否可以在viewDidLoad上显示popover中的主视图(当视图处于纵向时)?

解决方案1:

[self.popoverButtonItem.target performSelector: self.popoverButtonItem.action withObject: self.popoverButtonItem]; 

解决方案2:

 [self.popoverController presentPopoverFromBarButtonItem:toolbarButtonItem permittedArrowDirections:UIPopoverArrowDirectionAny animated:NO]; 

但诀窍是何时使用这些陈述。 我必须为此目的使用一个标志,以便在启动时只显示一次弹出窗口,并且只有在我有一个对popoverController的引用之后,即在分割视图委托方法调用之后。

在iOS 8.0中,Splitviewcontroller支持preferredDisplayMode ,它可能是这个用例的优雅解决方案。 来自Apple文档:

 UISplitViewControllerDisplayModePrimaryOverlay The primary view controller is layered on top of the secondary view controller, leaving the secondary view controller partially vis{ible. Available in iOS 8.0 and later.