问题
Is it possible to show master view in popover on viewDidLoad (when the view is in portrait orientation)?
回答1:
Solution 1:
[self.popoverButtonItem.target performSelector: self.popoverButtonItem.action withObject: self.popoverButtonItem];
Solution 2:
[self.popoverController presentPopoverFromBarButtonItem:toolbarButtonItem permittedArrowDirections:UIPopoverArrowDirectionAny animated:NO];
But the trick is when to use these statements. I had to use a flag for this purpose, in order to show the popover only once on startup, and only after i have a reference to my popoverController
i.e. after split view delegate method calls.
回答2:
With iOS 8.0 the Splitviewcontroller supports a preferredDisplayMode
which might be an elegant solution for this use case. From Apple Documentation:
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.
来源:https://stackoverflow.com/questions/6854016/uisplitviewcontroller-show-popover-for-master-view-on-viewdidload