iOS 6 での自動回転の変更により、これが信じられないほど困難または不可能になったようです。彼らは、子View Controllerが親View Controllerの自動回転動作をオーバーライドする必要がないという哲学を推進しているようです。これにより、私がやろうとしていることを達成することが難しくなります:
- 縦向きに表示する必要があるView Controllerがあります。
- シンプルな画像ビューアである別のView Controllerをモーダルにプッシュしますが、このView Controllerを任意の縦向きまたは横向きに回転できるようにしたいです(明らかな理由により)
- 子View Controllerが閉じられたとき(現在の向きに関係なく)、親View Controllerは縦向きのままでなければなりません
UIViewController クラス リファレンスからの関連する Apple ドキュメント
iOS 6 では、アプリは、アプリの Info.plist ファイルで定義されたインターフェイスの向きをサポートします。View Controller は supportedInterfaceOrientations メソッドをオーバーライドして、サポートされている向きのリストを制限できます。通常、システムは、ウィンドウのルート ビュー コントローラー、または画面全体に表示されるビュー コントローラーでのみ、このメソッドを呼び出します。子View Controllerは、親View Controllerによって提供されたウィンドウの一部を使用し、どの回転がサポートされているかに関する決定に直接参加しなくなりました。アプリの方向マスクとビュー コントローラーの方向マスクの交点は、ビュー コントローラーを回転できる方向を決定するために使用されます。
子View Controllerで回転をシミュレートするために変換を使用することを考えましたが、正直なところ、もっと良い方法があるはずだと感じており、可能であればそれを避けたいと思っています.
子View Controllerがインターフェイスの向きをサポートするには、その親View Controller(モーダルまたはその他の方法で提示される)もそのインターフェイスの向きをサポートする必要があるようです。
ここで簡単なものが欠けていますか?これは見た目ほどばかげていますか?