0

ほとんどの場合、縦向きのストーリーボード アプリがあります。ランドスケープ モードにする必要がある 1 つのナビゲーション コントローラー (2 つのビュー コントローラー) があります。アプリのメイン タブ コントローラーに接続し直します。アプリ内の他のすべてのビュー コントローラーとナビゲーション コントローラーは縦向きモードのままにする必要があります。向きを横向きに設定して左右の向きを許可しようとしましたが、これによりすべてのビューコントローラーのロックが解除され、横向きモードに移行します。これら2つだけを許可する方法はありますか?

助けてくれてありがとう!ベン

4

2 に答える 2

1

-(BOOL) shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientationアプリのすべてのビューコントローラーでサブクラス化し、2 つのビューコントローラーに対してのみ許可する必要があります。ただし、タブバーの場合、これらのビューコントローラーを表示する場合はYESに設定する必要があり(おそらくタブバーをサブクラス化する必要があります)、それ以外の場合はNOに設定する必要があります

于 2012-09-18T22:26:55.023 に答える
1

まず第一に、 UINavigationController をサブクラス化しないでください!

LandScape Orientation のみの場合、Landscape にする必要がある ViewController クラスでこれを使用します。

    - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    return ((interfaceOrientation == UIInterfaceOrientationLandscapeLeft) || (interfaceOrientation == UIInterfaceOrientationLandscapeRight));
}

これにより、ビューはランドスケープ モードでのみ保持されます。上記のスニペットを配置するために UINavigationController のサブクラスを作成しないでください。すべてのビューが横向きにロックされたままになります。

それがあなたを助けることを願っています:)!

于 2012-09-19T00:52:45.237 に答える