web-dev-qa-db-ja.com

iOS 13でsupportedInterfaceOrientationsが呼び出されない

IOS 13では、「表示」などのセグエを使用してビューコントローラーをプッシュすると、提示されたビューコントローラー(VC2)でsupportedInterfaceOrientationsが呼び出されなくなります。その結果、supportedInterfaceOrientationsが.landscapeしか返さなくても、コントローラーはポートレートモードに自動回転します。ただし、このコントローラー(VC2)から別のビューコントローラー(VC3)をセグエ経由でプッシュした場合、VC3は自動回転しません。

私が見つけた唯一の回避策は、モーダルプレゼンテーションスタイルのフルスクリーンを使用して、VC2をモーダルビューコントローラーとして表示することです。これはiPadデバイスでは必要ないので、iOS 13でこのように発生している理由と修正を探します。

8
Deepak Sharma

ビューコントローラーの「プレゼンテーションスタイル」をフルスクリーンに設定する必要があります。そうすると、supportedInterfaceオーバーライドが呼び出されます。

Story board

または、詳細についてはこちらをご覧ください

Swiftの現在のビューの上にモーダルを表示する方法

6