やりたいことは「ある1つのViewController(以下VC)はlandscape固定、それ以外のViewController(以下VC)達はportrait固定にする」ということをしたいです。
行ったことは、
0. xcode全体の設定として、portlaitおよびlandscapeを許可する。
- portrait固定のVC達にはsupportedInterfaceOrientationsでportraitを返すようにする。
- landscape固定のVCにはsupportedInterfaceOrientationsでlandscapeを返すようにする。
ということを行いました。
問題は
portrait固定のあるVCからlandscape固定のVCに遷移すると、遷移元のportrait固定のVCのcollectionViewのセルサイズが再計算されてしまい、Viewが崩れてしまうという問題です。
そもそも遷移元のcollectionViewの再計算ロジックが実行されるのは意図しない動作です。
参考までに
0. この問題の発生する遷移元のVCはNavigationViewControllerの子ViewControllerです。
0. またそのNavigationViewControllerのrootViewControllerとして指定したVCからlandscape固定のVCしても、rootViewControllerとして指定した遷移元のVCのcollectionViewの再計算ロジックが実行されることはなく、Viewが意図しない表示になることはないため、landscape固定のVC自体に問題があるとも考えておりません。
iOSのオリエンテーション対応は非常にトリッキーです。
一応世にネットに出回っている情報は一通り目を通したつもりです。
よろしくお願い致します!
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。