Swift

【Swift】回転を防ぐ!アプリ画面を縦や横に固定させる方法

こんにちは!KON(@pippi_kon)です。

iPhoneアプリの画面は、端末を傾けたり回転させたときに画面も一緒に回転します。

iPhoneの設定で画面の回転をロックする方法がありますが、これだとロック設定していない場合はやはり回転してしまいます。

でも中にはロック設定してなくても画面回転しないアプリもありますよね。

実はこれ、アプリ開発時に設定することができるのです。

そこで今回は、アプリを作成するときに画面を回転させない(向きを固定させる)方法についてご紹介します。

バージョン情報

この記事は以下のバージョンで記載しています。

Xcode:9.2

Swift:4.0.3(Swift4)

画面回転の設定

画面の回転を防止するには、Xcodeの設定を変更します。

プログラムコードの記述は不要です。

まず、Xcodeの左サイドバーのプロジェクト名を選択し、「TARGETS」のプロジェクト名を選択します。

次に「General」タブを選択し、この中の「Deployment info」欄の「Device Orientation」に着目します。

この「Device Orientation」が画面の回転を設定できる項目です。

ここのチェックボックスを操作することで画面を回転させたり固定させたりの設定ができます。

プログラム修正は不要!マウスの操作だけで簡単に設定できます。

 

Device Orientationの意味

「Device Orientation」では「ホームボタンの位置」を設定します。

このホームボタンの位置を制御することで、画面を回転させたり固定させたりすることができます。

ホームボタンを下だけに設定 → 縦固定

ホームボタンを下・左・右に設定 → 左右に回転

初期状態だと、縦、左回転、右回転するようになっています。

Device Orientationのそれぞれの意味は以下のとおりです。

Device Orientation 意味
Portrait 縦画面(ホームボタンは下)
Upside Down 縦画面(ホームボタンは上)
Landscape Left 横画面(ホームボタンは左)
Landsape Right 横画面(ホームボタンは右)

 

縦固定にしたい場合

アプリ画面を縦画面(ホームボタンは下)に固定したい場合は、「Portrait」のみにチェックします。

初期状態から、「Landscape Left」と「Landscape Right」のチェックを外します

これで縦に固定できます。

 

左右に回転させたい場合

アプリ画面を縦持ちに加え左右に回転させたい場合は、初期状態のままでOKです。

初期状態とは、「Portrait」「Landscape Left」「Landscape Right」の3つの項目にチェックが入った状態です。

 

全ての向きに回転させたい場合

アプリ画面を全ての向き(上下左右)に回転させたい場合は、4つの項目全てにチェックを入れます。

 


最後に

いかがだったでしょうか?

今回は、アプリを作成するときに画面を回転させない(向きを固定させる)方法についてご紹介しました。

私がよくやりがちなのですが、アプリ開発をしているとプログラムにばかり気を取られて画面の回転のことは忘れがちになってしまいます。

回転させることで画面サイズの比率が変わり、画面表示が崩れたりすることがあるので、回転させたくない場合は縦に固定しちゃいましょう。