0

次のようなコードをよく見かけます。

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation {
    return YES;
}

サポートされている向きがプロジェクト構成で設定されている場合、常に YES を返すだけでは意味がありませんか? または、これが影響を与える特定のケースはありますか?

4

2 に答える 2

1

shouldAutorotateToInterfaceOrientation:UISupportedInterfaceOrientations(ちなみに、これは iOS 6 以降では非推奨です) は、info plistの とはまったく異なるものです! このメソッドを実装しない場合、 で何を指定しても、それぞれのビュー コントローラーはそのインターフェイスの向きに自動回転しませんUISupportedInterfaceOrientations

ドキュメントからUISupportedInterfaceOrientations:

システムは、この情報と現在のデバイスの向きを使用して、アプリを起動する最初の向きを選択します。

于 2012-10-30T15:12:44.697 に答える
1

アプリケーションの多くの部分で複数のインターフェイスの向きをサポートしているかもしれませんが、一部ではそれらの一部しかサポートしていません (たとえば、ビデオを横向きでのみ再生したい場合)。

したがって、アプリが縦向きをサポートしている場合でも、ビューコントローラーが向きを横向きにすることをお勧めします。

編集:他の回答にコメントできないため、ここにコメントしています。

iOS6 の @daniel-rinser では、システムはプロジェクトでサポートされているインターフェイスの向きをチェックし、viewcontroller でサポートされている向きと交差するため、起動だけでなく、すべてのアプリの実行に使用されます。

于 2012-10-30T15:13:11.623 に答える