Orientation のためだけに 2 つの ViewControllersが必要なのはなぜですか?
HEre 簡単なシナリオ ,
2 つのビューを作成する
- 縦長 &&
- ランドスケープ ビュー、ご要望に応じて。
このようなものに従ってください。
-(BOOL)shouldAutorotate{
return YES;
}
- (void) willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration {
[self orientationChanged:toInterfaceOrientation];
}
-(void)orientationChanged:(UIInterfaceOrientation)orientation{
NSLog(@"orientation change");
// UIDeviceOrientation deviceOrientation = [[object object] orientation];
if(orientation == UIInterfaceOrientationPortrait || orientation == UIInterfaceOrientationPortraitUpsideDown){
NSLog(@"Changed Orientation To Portrait");
self.viewPortrait.hidden = NO;
self.viewLandscape.hidden = YES;
}
else if(orientation == UIInterfaceOrientationLandscapeLeft || orientation == UIInterfaceOrientationLandscapeRight){
NSLog(@"Changed Orientation To Landscape");
self.viewPortrait.hidden = YES;
self.viewLandscape.hidden = NO;
}
}
そして、すべてのオリエンテーションが必要になるように設定する必要があります。
-(NSUInteger)supportedInterfaceOrientations
{
return UIInterfaceOrientationMaskAll;
}