AllButUpsideDown以外のすべてのビューで、ポートレートにロックされているアプリがあります。私が使用しているアプローチは、ターゲット一般設定メニューでポートレート、ランドスケープレフトとランドスケープライトを有効にすることです。次に、func supportedInterfaceOrientations() -> UIInterfaceOrientationMask
をオーバーライドし、.Portrait
を返すUINavigationControllerおよびUITabBarControllerのサブクラスを作成します。回転動作iOS8 vs iOS9
私のビューコントローラでは、回転が可能である必要があります。また、func supportedInterfaceOrientations() -> UIInterfaceOrientationMask
をオーバーライドし、.AllButUpsideDown
を返します。このビューコントローラはモーダルとしてのみ表示されるため、これはうまく動作します。つまりaViewController.presentViewController()
です。
iOS8のiOS9で期待どおりの動作をしますが、回転可能なビューコントローラーを閉じると、ランドスケープではUIが拡大表示され、ポートレートで表示されます。
誰もがこのことについて何をすべきかを知っていますか?この回転のことが最初から間違っていますか?すべてのクリーンな修正?回避策?ハック?
UPDATE
私の問題は、回転させることができ、ビューコントローラを提示し、却下するカスタムの移行を使用して私から始まりました。私はしばらくの間、さまざまな解決策でそれを回避しようとしました。私が解決策を得た最も近いのは、回転可能なビューコントローラーに別のUIWindowを使用することでした。これは、キャリアーバーの問題がまだ間違った方向になっていたことを除き、解決できなかったものでした。
私が行った解決策(実際の解決策ではありません)は、iOS9 +とiOS8のカスタムトランジションを使用することでしたが、デフォルトの現在のトランジションを使用しました。
これを確認してください。http://stackoverflow.com/questions/38308919/unable-to-force-uiviewcontroller-orientation/38308987#38308987 –