ナビゲーションコントローラ階層に3つのView Controllerがあるとします。View Controllerが正しい向きで表示されない
vc1:
{ return (interfaceOrientation == UIInterfaceOrientationPortrait);}
vc2:
{ return (interfaceOrientation == UIInterfaceOrientationPortrait
|| interfaceOrientation == UIInterfaceOrientationLandscapeLeft
|| interfaceOrientation == UIInterfaceOrientationLandscapeRight);}
vc3:
{ return (interfaceOrientation == UIInterfaceOrientationPortrait);}
だから、私の最初のビューコントローラVC1は、ポートレートモードで表示されます。私はすべての3つのビューコントローラのshouldAutorotateToInterfaceOrientation:
メッセージを処理していますか
はこれがあります。デバイスが回転している場合、何も起こりませんが正しいです。その後、vc2をスタックにプッシュし、最初はポートレートで表示されます。デバイスを回転させて、vc2が横長モードになりますが、これは正しいです。 VC2のための風景モードでは、残っている間、私は、スタックオフVC2をポップし、VC1、およびは、ポートレートモードで表示されVC1に戻って - も正しいです。
ここに問題があります。
VC1はVC2に肖像画、ポップに表示され、景観ビューを表示するように回転しています。次に、ポートレートのみをサポートしていても、vc3にポップアップし、vc3を横向きにスライドさせます。
なぜこれが起こっているのか、それともどのように対処するのか分かりません。言い換えれば、vc1に戻るときはいつでも自動的にポートレートで表示されますが、vc3は以前のvcが使用していたどんな向きでも自動的に表示します。しかし、あなたは私がvc1とvc3に同じコードを使用しているのを見ることができます。
ご協力いただけると助かります。
"vc1とvc1に同じコードを使用しています。"あなたはvc1とvc3を意味します、そうですか?それを編集したいかもしれません。 –
はい、ありがとう、私は "vc1とvc3"を意味し、私は質問を編集しました... – bpatrick100