Sponsor Link
環境&対象
- macOS Monterery beta 5
- Xcode 13 beta5
- iOS 15
サポートする画面の方向
iOS アプリでは、サポートする画面(デバイス)の方向を指定することができます。
例えば、「このアプリは、ポートレイト(縦向き)にのみ対応し、ランドスケープ(横向き)にされても画面は回転されない」というようなアプリです。
Xcode を使用すると簡単に指定できるのですが、ケースによっては、想定していない動作をしている時があります。
具体的には、サポートをしていない デバイス方向になった時に、(サポートしないと指定しているのに)デバイスの方向に合わせて画面が回転してしまうことがあります。
この記事では、作成したアプリが、サポートすると指定した画面の向き以外に回転してしまうケースの対処方法を説明します。
この記事で説明するのは、iPhone アプリのみです。iPad アプリは、別途考慮することが必要な要素があります。(具体的には、”Support multiple windows” の考慮が必要となります)
iOS アプリのサポートするデバイス方向指定
Xcode の General タブ中に以下のような設定画面があります。
アプリがサポートする画面方向は チェックを つける・はずす ことで、設定できるハズです。
例えば、Portrait にのみ チェックを入れている時には、デバイスをどのような向きに回転しても、アプリは、Portrait 時の画面レイアウトのままでデバイスに合わせて回転しません。
ですが、その期待に沿わない時、例えば デバイスを横にすると、画面が回転されてしまう 時があります。
iOS アプリのサポートするデバイス方向指定(Info)
アプリのサポートするデバイス方向指定は、General タブだけでなく、Info タブでも確認することができます。
デバイス方向指定がうまくいかない時に確認すること
General タブでの情報と Info タブでの情報が異なる指定となっている時には、Info タブでの設定が優先されるようです。
ですので、General タブで指定したデバイス方向通りにアプリが動作しない時には、Info タブの情報を確認して、指定を調整することで 問題を解決できる時があります。
本来は、General タブの情報と Info タブの情報は 同期されるはずですが、なんらかの理由やタイミングで うまく同期しなくなってしまう時があるようです。
まとめ:iOS アプリのサポートデバイス方向指定 がうまく効いていない時に確認すること
- General タブで正しく指定しているか確認する
- Info タブに表示される情報が、General タブでの情報と一致するか確認する
- Info タブの情報が期待する設定でなければ修正する
説明は以上です。
不明な点やおかしな点ありましたら、こちらまで。
Sponsor Link