LoginSignup
4
0

More than 5 years have passed since last update.

[Monaca] iOSのオリエンテーションについて

Last updated at Posted at 2017-10-15

Monacaで開発するiOSアプリで、オリエンテーションの制御を行う場合は、 config.xml に下記のように設定を行う必要があります。(Cordova 5系以上が対象です。)

config.xml
<!--- portraitの場合 -->
<platform name="ios">
  <preference name="orientation" value="portrait"/>
</platform>

orientationの値には、all landscape portrait を指定することができます。

注意点といたしまして、上記の設定は、ビルド時に設定が反映されるため、Monacaデバッガーでは確認することはできません。動作を確認する場合は、ビルドを行い実機で確認する必要があります。

portraitで端末の向きを正位置で固定する

上記の設定では、端末を180度回転させた場合、画面が回転します。
端末の向きを正位置で固定する場合は、下記の設定が必要になります。

下記の設定は、Monacaで提供している Custom Configプラグイン の機能を利用しています。
下記の設定を行う場合は、Custom Configプラグイン有効 にしてください。

Cordova 5系 または Cordova 6系の場合

config.xml
<platform name="ios">
  <preference name="orientation" value="portrait"/>
  <config-file target="*-Info.plist" parent="UISupportedInterfaceOrientations" overwrite="true">
    <array>
      <string>UIInterfaceOrientationPortrait</string>
    </array>
  </config-file>
  <config-file target="*-Info.plist" parent="UISupportedInterfaceOrientations~ipad" overwrite="true">
    <array>
      <string>UIInterfaceOrientationPortrait</string>
    </array>
  </config-file>
</platform>

Cordova 7系の場合

config.xml
<platform name="ios">
  <preference name="orientation" value="portrait"/>
  <custom-config-file parent="UISupportedInterfaceOrientations" target="*-Info.plist" mode="replace">
    <array>
      <string>UIInterfaceOrientationPortrait</string>
    </array>
  </custom-config-file>
  <custom-config-file parent="UISupportedInterfaceOrientations~ipad" target="*-Info.plist" mode="replace">
    <array>
      <string>UIInterfaceOrientationPortrait</string>
    </array>
  </custom-config-file>
</platform>

landscapeで端末の向きを左位置で固定する

landscapeの場合も同様に、向きを固定する場合は、下記の設定が必要になります。

Cordova 5系 または Cordova 6系の場合

config.xml
<platform name="ios">
  <preference name="orientation" value="landscape"/>
  <config-file target="*-Info.plist" parent="UISupportedInterfaceOrientations" overwrite="true">
    <array>
      <string>UIInterfaceOrientationLandscapeLeft</string>
    </array>
  </config-file>
  <config-file target="*-Info.plist" parent="UISupportedInterfaceOrientations~ipad" overwrite="true">
    <array>
      <string>UIInterfaceOrientationLandscapeLeft</string>
    </array>
  </config-file>
</platform>

Cordova 7系の場合

config.xml
<platform name="ios">
  <preference name="orientation" value="landscape"/>
  <custom-config-file parent="UISupportedInterfaceOrientations" target="*-Info.plist" mode="replace">
    <array>
      <string>UIInterfaceOrientationLandscapeLeft</string>
    </array>
  </custom-config-file>
  <custom-config-file parent="UISupportedInterfaceOrientations~ipad" target="*-Info.plist" mode="replace">
    <array>
      <string>UIInterfaceOrientationLandscapeLeft</string>
    </array>
  </custom-config-file>
</platform>

landscapeで端末の向きを右位置で固定する

Cordova 5系 または Cordova 6系の場合

config.xml
<platform name="ios">
  <preference name="orientation" value="landscape"/>
  <config-file target="*-Info.plist" parent="UISupportedInterfaceOrientations" overwrite="true">
    <array>
      <string>UIInterfaceOrientationLandscapeRight</string>
    </array>
  </config-file>
  <config-file target="*-Info.plist" parent="UISupportedInterfaceOrientations~ipad" overwrite="true">
    <array>
      <string>UIInterfaceOrientationLandscapeRight</string>
    </array>
  </config-file>
</platform>

Cordova 7系の場合

config.xml
<platform name="ios">
  <preference name="orientation" value="landscape"/>
  <custom-config-file parent="UISupportedInterfaceOrientations" target="*-Info.plist" mode="replace">
    <array>
      <string>UIInterfaceOrientationLandscapeRight</string>
    </array>
  </custom-config-file>
  <custom-config-file parent="UISupportedInterfaceOrientations~ipad" target="*-Info.plist" mode="replace">
    <array>
      <string>UIInterfaceOrientationLandscapeRight</string>
    </array>
  </custom-config-file>
</platform>

おわりに

iOSでのオリエンテーション設定の際に、画面の位置を固定したい場合は、一度お試しください。

4
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
0