【Android開発】縦向き固定、横向き固定の方法

先日、利用者からの依頼を受けて、アンドロイドアプリ「議事録」の横向き画面対応を行いました。
新しく処理を追加するのではなく、元々、縦向き固定にする定義を行っていたものを外しただけと、いたってシンプルな対応でしたが備忘録として残しておきます。

縦向き固定、横向き固定共に、修正するファイルは「AndroidManifest.xml」だけです。

まずは縦向き固定の設定方法について。

<activity
    android:name="sample"
    android:configChanges="orientation|keyboard|keyboardHidden"
    android:exported="false"
    android:label="@string/app_name"
    android:noHistory="true"
    android:screenOrientation="portrait" ><!-- ※※ -->
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
    </intent-filter>
</activity>

対象となる画面(アクティビティ)で、上記の※※を付けた行を追加すれば縦向き固定になります。
逆にこの行を削除すれば、端末の向きに応じて対象の画面の向きも切り替わるようになります。

続いて横向き固定の設定方法ですが、まぁほとんど変わりません。
上記のサンプルで「portrait」となっている部分を「landscape」に変えればOKです。

画面単位で設定を行う必要があるため、複数画面が存在する場合はそれぞれの画面に設定を入れる必要があるので、その点は注意してください。

縦向き、横向きのテストは実機でないとできないと思っていましたが、エミュレータでも「Ctrl + F11」で縦向き・横向きを切り替えられるようですね。
一つ賢くなりました!

以上です。

サブコンテンツ

このページの先頭へ