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 | 傾き検知を無視(どんな動きになる?) |