I have an app with a tab bar, and nav controllers in each tab. When user shakes the device, a UIImageView
appears as a child view in the nav controller. But the
Try this:
[[UIApplication sharedApplication] statusBarOrientation]
Or in Swift 3:
UIApplication.shared.statusBarOrientation
To specifically check for a particular orientation you can also try the isLandscape
or isPortrait
property like so:
UIApplication.shared.statusBarOrientation.isLandscape
The problem with [[UIDevice currentDevice] orientation]
is that it will also return UIInterfaceOrientationUnknown
which statusBarOrientation
does not.
There is also a UIViewController
property interfaceOrientation
but it was deprecated in iOS 8, so it's not recommended.
You check documentation for statusBarOrientation
here