5

iOSシミュレーター(6.0以降)を回転させる方法を知っている人はいますか?検索しましたが、何も見つかりませんでした。

私はこれを(手動ではなく)コードを介して実行しようとしていますが、スクリプトを介して実行できる場合は、コードから実行する必要があります。これもできますか?いくつかのアドバイスが必要です。

4

2 に答える 2

6

次のように、サポートされているインターフェイスの向きのエントリをTestsターゲット(または適切なターゲット)に追加します。

ターゲット設定

エントリがランドスケープのものだけである限り、ランドスケープモードで実行されます。

編集:
テストについてのコメントを誤解していて、単体テストを実行していない場合は、メインターゲットの方向を変更し続けたくないでしょう。その場合、メインターゲットを複製して、そこで方向を変更することができます。

編集:
コードで強制的に回転させるための文書化されていない方法があります。これはテストでは機能しますが、送信されたアプリで使用すると、アプリが拒否される可能性があります。

[[UIDevice currentDevice] setOrientation:UIInterfaceOrientationLandscapeRight animated:YES];

この方法を使用する必要がある場合は、このカテゴリを含めてください。

@interface UIDevice (MethodsThatAppleWillHitMeWithTheBanStickForUsing)
    -(void)setOrientation:(UIInterfaceOrientation)orientation animated:(BOOL)animated;
    -(void)setOrientation:(UIInterfaceOrientation)orientation;
@end
于 2013-03-26T16:32:37.360 に答える
0

iOS6ですべての向きを機能させるには、いくつかの手順を確認する必要があります。それらの1つが欠落している場合でも、それは機能しません。

  1. ランスが言うように、はい、iphoneまたはipadでサポートされている向きを適切に設定する必要があります。

  2. 回転を設定するコントローラーにこのコードを記述します。

    -(NSUInteger)supportedInterfaceOrientations {return UIInterfaceOrientationMaskAll; }

    -(BOOL)shouldAutorotate {return YES; }

必要な方向に応じて、UIInterfaceOrientationMaskAllを変更します。

  1. プロジェクトでナビゲーションコントローラーを使用している場合は、正しく設定されていることを確認してください。

このエラーは発生しないはずです...(アプリケーションは、アプリケーションの起動時にルートビューコントローラーを備えている必要があります)

これらの手順を正しく実行すると、ローテーションが機能します。

于 2013-03-26T17:35:18.230 に答える