0

supportedInterfaceOrientationのときに一度だけ呼び出す必要がありますviewDidLoadが、私の場合はシミュレーターが回転するたびに呼び出されます。

私は2つの向きだけが必要です。

逆さまに回転すると、サポートされているインターフェイスの向きが 4 回呼び出され、ビューが逆さまになります。ランドスケープへの回転では、一度だけ呼び出されます(しかし、すべきではありませんか?)。

解決策はありますか?

PS: ナビゲーション コントローラーを使用していないため、回転をトップ ビュー コントローラーと同じに設定しても問題ありません。そして、私の pList では 2 つの方向のみがサポートされています

また、サブビューを追加するメインのView Controllerがあり、View Controllerでサポートされているインターフェイスの向きを設定しました。

奇妙なのは、障害のあるビューコントローラーの前にある (前に提示された) 3 つのビューコントローラーです。それらは正常に回転します。

4

2 に答える 2

1

viewDidLoad で interfaceOrientation を確認できます。self.userInterFaceOrientation で interfaceOrientation を取得できます。

viewWillAppear で interfaceOrientation を確認したほうがいいかもしれません。

違いは、viewDidLoad は 1 つだけ呼び出され、そのビューに入るたびに viewWillAppear が呼び出されることです。

于 2013-01-21T09:27:52.157 に答える
1

プロジェクト -> 概要 -> サポートされているインターフェイスの向きをクリックするだけです。必要に応じてインターフェイスの向きをクリックできます。

于 2013-01-21T11:51:26.533 に答える