0

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... メソッドの両方が要求され、ランドスケープ モードになり、ステータス バーがランドスケープ モードに表示されます。

ここに画像の説明を入力

理想的には回転を完全に拒否するかどうかです (青、黄色、ステータス バーは回転しません)。

助けてください。

4

1 に答える 1

0

プロジェクト ファイルで許可される向きを設定できます。

  1. プロジェクト ツリーの最上位をクリックします。
  2. 「ターゲット」の下の左側の列でターゲットをクリックします
  3. [概要] タブで、[サポートされているデバイスの向き] を選択できます。
于 2012-08-21T10:40:36.530 に答える