UISplitViewController – Pushing Modal View

What is considered the best practise when pushing a modal view when using a UISplitViewController? Would you push from the RootViewController, the DetailViewController or directly from the Application Delegate?

Ideally the functionality I am trying to achieve is to have the modal view controller displayed as soon as the UISplitViewController is loaded based on certain conditions.

  • CoreData Edit/Overwrite Object
  • Master Table Application
  • Can Someone Help Me To Understand What Is This “Delegate”?
  • How do I add a custom view to iPhone app's UI?
  • How to create a segue from UIViewController to a UISplitViewController
  • Alternative to subclassing UITabBarController
  • Thanks in advance for any pointers on this matter.

    2 Solutions Collect From Internet About “UISplitViewController – Pushing Modal View”

    I was trying to do the exact same thing, and I’ve come up with the following answer: it’s simpler to do it from the App Delegate.

    In Portrait mode, the RootViewController is created in a strange way (popover) so it’s not practical, the Application Delegate ensures your view will show properly in all cases. I can’t remember what was the issue with doing it in the DetailViewController though.

    EDIT: the actual implementation in application:didFinishLaunchingWithOptions: is something like that: [splitViewController presentModalViewController: modalViewController animated: NO];. Hope this helps!

    I actually ran across the same issue and made this post:

    presentModalViewController slides a new view too far up and goes above the top of the screen

    Basically, when you call a modal view from the detail view, the program explodes with problems with many to do with rotating while on the modal view.


    Bottom line, always call a modal view from the root view controller.