I have a UINavigationController
with a root UIViewController
("root").
The root view controller pushes another UIViewController
"child". When the "child" UIViewController
is on the screen , I rotate the device and expect the "root" view controller to resize accordingly but this isn't happening. After putting a breakpoint in the root view controller:
-(void)viewWillTransitionToSize:(CGSize)size withTransitionCoordinator:(id<UIViewControllerTransitionCoordinator>)coordinator {
[super viewWillTransitionToSize:size withTransitionCoordinator:coordinator];
}
I see that the size is wrong and the root view controller doesn't adjust properly to the change.
Has any one experienced this behaviour?
The code is as so:
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
}
-(void)viewWillTransitionToSize:(CGSize)size withTransitionCoordinator:(id<UIViewControllerTransitionCoordinator>)coordinator {
/// The size is wrong if this view controller is off screen
[super viewWillTransitionToSize:size withTransitionCoordinator:coordinator];
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end
Here is a print screen of the NSLog of the size after rotating the device - This is from the simulator but the behaviour is the same on the device.