Landscape orientation but portrait frame values?
frame, ios, objective-c
Solution
I believe that the frame rects don't react to orientation change.
EDIT: My original solution was overly complicated for your needs. If you're correctly finding the current orientation, then just interpret the width of the rect as the height if you're in landscape mode.
Problem
I'm developing an iOS application with latest SDK. I have set Landscape right orientation as the unique orientation available and I have a question about viewController view. This is my code: ``` - (void)viewDidLoad { [super viewDidLoad]; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(deviceOrientationDidChange:) name:UIDeviceOrientationDidChangeNotification object:nil]; [[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications]; } - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation { return (interfaceOrientation != AVCaptureVideoOrientationLandscapeRight); } - (void)deviceOrientationDidChange:(NSNotification*)notification { UIInterfaceOrientation orientation = [UIApplication sharedApplication].statusBarOrientation; if (orientation == AVCaptureVideoOrientationLandscapeLeft) NSLog(@"Orientation: Landscape Left"); else if (orientation == AVCaptureVideoOrientationLandscapeRight) NSLog(@"Orientation: Landscape Right"); NSLog(@"FRAME: %@", NSStringFromCGRect(self.view.frame)); } ``` And this is the log that I get: ``` Orientation: Landscape Right FRAME: {{0, 0}, {320, 568}} Orientation: Landscape Right FRAME: {{0, 0}, {320, 568}} ``` My question is about `{{0, 0}, {320, 568}}`: Why am I getting these values? I think the correct values would be `{{0, 0}, {568, 320}}`.