2

私はたくさんの研究をしましたが、まだこれに対する解決策を見つけることができません...

私はすべての向きをサポートするアプリを持っています。アプリをiPadで実行する場合、横向きモードで起動したいと思います。その後、ユーザーは必要に応じて縦向きに回転できます。ios5では、info.plistファイルでサポートされているiPadの向きをlansdcapeleftに設定することでこれを実現しました。次に、各View ControllerでshouldAutorotateToInterfaceOrientationメソッドを使用して、アプリの実行中にすべての方向を許可しました。

次に、iOS6の新しい方向付け方法をサポートするようにコードを変更しましたが、iPadでアプリを実行したとき、まったく回転していませんでした。次に、iPadのすべての向きをサポートするようにinfo.plistファイルを変更しました。これにより、iPadが自動回転しないという問題は解決しましたが、アプリを最初に横向きモードで開くように強制する方法がわかりません。何か案は?

あなたが与えることができるどんな助けにも前もって感謝します!

4

1 に答える 1

1

私は最近似たようなものに出くわしましたが、私の問題はiPhoneアプリでポートレートを強制したいのですが、映画をランドスケープで再生できるようにすることでした。これが私がしたことです:

アプリデリゲートにプロパティを追加して、許可する方向を保存します。

@property (nonatomic, assign) NSUInteger supportedOrientations;

次に、アプリデリゲートで、新しいiOS6メソッドを実装しました。

- (NSUInteger)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window {

    return supportedOrientations;
}

アプリの起動時に、ポートレートを強制しました。

self.supportedOrientations = UIInterfaceOrientationMaskPortrait;

そして、アプリの起動が完了し、ルートビューコントローラーを表示したら、両方の方向をサポートするように設定しました。

self.supportedOrientations = UIInterfaceOrientationMaskPortrait | UIInterfaceOrientationMaskLandscape;

回転を許可せずに横向きのビデオを許可したかったので、その後の回転を防ぐためにUINavigationControllerをサブクラス化する追加の手順を追加する必要がありました。

- (BOOL)shouldAutorotate {

    return FALSE;
}

しかし、それは単なる情報です。あなたはそれを必要としないでしょう

于 2012-11-07T19:19:34.623 に答える