はじめに
JavaScript(Ionic)を使ってiOSアプリを作成していた時に、「iPadで縦向き(Portrait)表示するとレイアウトが崩れるから、横向き(Landscape)固定にしたい」という要請が発生した。とはいえ、iPhoneでも横向き(Landscape)固定にするのは、使いづらいと思ったので、モバイル端末とタブレット端末でPortraitとLandscapeを切り替える必要があった。
バージョン情報
Xcode: 9.3
Ionic Framework: ionic-angular 3.9.2
手順
なんかしらのライブラリの導入を検討していたが、Xcodeの設定を変更するだけでできた。
まずXcodeでプロジェクトを選択して、General
を選択する。そして、Deployment Info
のDevices
をUniversal
に設定する。
これで、iPhone、iPadそれぞれに対して、アプリの表示の向きを設定する事ができる。
iPhoneはPortrait固定に設定
まず、iPhoneから設定していく
Device Orientation
チェックボックスでPortrait
以外のチェックを外す。
iPadはLandscape固定に設定
続いて、iPadの設定
Device Orientation
チェックボックスでLandscape Left
かLandscape Right
のいずれか、もしくは両方を選択する(向きが変わるので、お好みで)。
関連ライブラリ
今回は使用しなかったが、ページごとに表示の向きを固定したりできるライブラリがあるらしい。