I tried to do the same, and I came up with the following answer: it is easier to do this from the App Delegate.
In portrait mode, the RootViewController is created in a strange way (popover), so it is not practical, the application delegate ensures that your view will be displayed correctly in all cases. I canβt remember what the problem is with doing this in the DetailViewController.
EDIT: the actual implementation in application:didFinishLaunchingWithOptions: looks something like this: [splitViewController presentModalViewController: modalViewController animated: NO]; . Hope this helps!
source share