酢ろぐ!

カレーが嫌いなスマートフォンアプリプログラマのブログ。

Androidで特定のActivityの画面の向きを指定する

Androidにも加速度センサが付いている様で、縦長画面の状態で端末を傾けると横長画面で表示されてしまいます。

特定の画面の向きは固定にしたい場合は、AndroidManifest.xmlのactivity要素にscreenOrientation属性を追加します。下記のサンプルコードは、縦長(portrait)固定の指定にしています。

<activity
      android:name="CameraPreviewActivity"
      android:label="@string/app_name"
      android:screenOrientation="portrait">
</activity>


他にも設定可能な値としては、以下のようなものがあります。

unspecified システムのデフォルトの向き
landscape 横長の向き
portrait 縦長の向き
user ユーザ設定に従う
behind 親のActivityに従う(どんな動きになる?)
sensor 傾き検知
nosensor 傾き検知を無視(どんな動きになる?)