Mengunci Orientasi Activity Android

Bagus Aji Santoso 6 Februari 2018

Mengunci Orientasi Activity Android

Saat membuat aplikasi Android, kadang kita menemukan kasus di mana kita ingin agar Activity tidak ikut berubah saat orientasi layar berubah. Kita ingin agar Activity tetap portrait meskipun posisi perangkat Android saat ini Landscape dan begitu pula sebaliknya.

Dengan memanfaatkan AndroidManifest.xml, kita bisa mengatur agar activity tertentu mengunci orientasinya baik dalam bentuk portrait maupun landscape. Opsi ini hanya bisa dilakukan dengan menambah atribut android:screenOrientation didalam tag <activity>. Nilai yang umumnya dipakai adalah portrait, landscape, dan behind (mengikuti orientasi activity sebelumnya di stack).

Mengapa Harus Belajar Android dengan Android Studio

Berikut contoh kode yang akan mengunci orientasi layar Activity:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.lobothijau.halo">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity
            android:name=".MainActivity"
            android:label="@string/app_name"
            android:screenOrientation="portrait"
            android:theme="@style/AppTheme.NoActionBar">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

        <activity
            android:name=".DetailActivity"
            android:screenOrientation="landscape" />
        <activity
            android:name=".SettingsActivity"
            android:screenOrientation="behind" />
    </application>

</manifest>