UIWindow があり、rootViewController の背景は青色で、あらゆる種類の向きを変更できます。
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return YES;
}
次に、新しい rootViewController (SecondViewController) で新しい UIWindow を作成します。
UIWindow *window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
SecondViewController* secondVC = [[SecondViewController alloc] init];
window.rootViewController = secondVC;
window.windowLevel = UIWindowLevelStatusBar;
[window makeKeyAndVisible];
SecondViewController は縦向きのみを許可します。
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return (interfaceOrientation == UIInterfaceOrientationPortrait);
}
私にとって最も重要なことは、 SecondViewController ビューがポップアップのように追加されることです。そのため、ユーザーは以前の VC の背景を見ることができます。
しかし、デバイスを回転させると、VC に - (BOOL)shouldAutoRotate... メソッドの両方が要求され、ランドスケープ モードになり、ステータス バーがランドスケープ モードに表示されます。
理想的には回転を完全に拒否するかどうかです (青、黄色、ステータス バーは回転しません)。
助けてください。