The actual name for this question is longer than I can fit:
Launching an application whose root view controller only supports portrait orientation but otherwise supports landscape orientations on the iPhone 6 Plus, while the home screen is in landscape orientation, leads to an uncertain state when the application window is in landscape orientation, but the device is in portrait orientation.
In short, it looks like this:

When it should look like this:

Playback steps:
iPhone 6 Plus is running iOS 8.0.
An application whose plist supports an all-but-portrait-up-down orientation.
The application root view controller is the UITabBarController.
Everything, the tab bar controller and all its child controllers of the child views return a UIInterfaceOrientationMaskPortrait from supportedInterfaceOrientations .
On the iOS home screen.
Rotate to landscape (iPhone 6 Plus required).
Cold start application.
Result: broken interface orientations.
I canβt think of any other way to ensure orientation to portraits, except to turn off the landscape in general, which I canβt do: our web browser modal viewers need a landscape.
I even tried to subclass UITabBarController and override supportInterfaceOrientations to return a portrait-only mask, but that (even with all the other steps above) did not fix the problem.
Here is a link to an example project showing an error.
ios iphone ios8 uiinterfaceorientation
jaredsinclair Sep 23 '14 at 19:22 2014-09-23 19:22
source share