I have developed an iOS App and tested it on iOS6 device. While testing, I realized that my App is not responding to Orientation changes as expected.
Here is my Code:
// Autorotation (iOS >= 6.0) - (BOOL) shouldAutorotate { return NO; } - (NSUInteger)supportedInterfaceOrientations { return UIInterfaceOrientationMaskAll; } - (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation { return UIInterfaceOrientationMaskPortrait; }
Precisely, I want to know that what Methods are called on Orientation Changes in iOS.
If the activity locks the display ( android:screenOrientation="portrait" ), this method will return the same value irrespective of how the user rotates the device. In that case you'd use the accelerometer or the gravity sensor to figure out orientation properly.
You can try this, may help you out:
How to change the device orientation programmatically in iOS 6
OR
Objective-c:
UIDeviceOrientation orientation = [[UIDevice currentDevice] orientation]
Swift:
if UIDevice.current.orientation.isLandscape { // Landscape mode } else { // Portrait mode }
You can try this, which solves your problem.
UIInterfaceOrientation orientation = [UIApplication sharedApplication].statusBarOrientation;
Refer below link for App extension
Get device current orientation (App Extension)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With