Google berkomitmen untuk mendorong terwujudnya keadilan rasial bagi komunitas Kulit Hitam. Lihat caranya.

Menambahkan tindakan naik

Aplikasi Anda harus memudahkan pengguna untuk menemukan cara kembali ke layar utama aplikasi. Salah satu cara sederhana untuk melakukannya adalah dengan menyediakan tombol Naik di panel aplikasi untuk semua aktivitas kecuali yang utama. Saat pengguna memilih tombol Naik, aplikasi akan mengarah ke aktivitas induk.

Tutorial ini menunjukkan cara menambahkan tombol Naik ke aktivitas dengan mendeklarasikan induk aktivitas dalam manifes, dan mengaktifkan tombol Naik di panel aplikasi.

Komponen Arsitektur Navigasi, saat ini dalam alfa, adalah metode lain untuk menangani navigasi di aplikasi Anda. API dapat menangani navigasi dari layar saat ini di aplikasi Anda ketika pengguna mengklik tombol naik. Untuk mempelajari lebih lanjut, lihat Komponen Arsitektur Navigasi.

Mendeklarasikan Aktivitas Induk

Untuk mendukung fungsi naik dalam suatu aktivitas, Anda perlu mendeklarasikan induk aktivitas. Anda dapat melakukannya di manifes aplikasi, dengan menetapkan atribut android:parentActivityName.

Atribut android:parentActivityName diperkenalkan di Android 4.1 (API level 16). Untuk mendukung perangkat dengan versi Android yang lebih lama, tentukan pasangan nama-nilai pada <meta-data>, dengan nama "android.support.PARENT_ACTIVITY", dan nilainya adalah nama aktivitas induk.

Misalnya, aplikasi Anda memiliki aktivitas utama yang bernama MainActivity dan satu aktivitas turunan. Kode manifes berikut akan mendeklarasikan kedua aktivitas, dan menentukan hubungan induk/turunan:

    <application ... >
        ...

        <!-- The main/home activity (it has no parent activity) -->

        <activity
            android:name="com.example.myfirstapp.MainActivity" ...>
            ...
        </activity>

        <!-- A child of the main activity -->
        <activity
            android:name="com.example.myfirstapp.MyChildActivity"
            android:label="@string/title_activity_child"
            android:parentActivityName="com.example.myfirstapp.MainActivity" >

            <!-- Parent activity meta-data to support 4.0 and lower -->
            <meta-data
                android:name="android.support.PARENT_ACTIVITY"
                android:value="com.example.myfirstapp.MainActivity" />
        </activity>
    </application>
    

Mengaktifkan Tombol Naik

Untuk mengaktifkan tombol Naik pada aktivitas yang memiliki aktivitas induk, panggil metode setDisplayHomeAsUpEnabled() panel aplikasi. Biasanya, Anda akan melakukannya saat aktivitas dibuat. Misalnya, metode onCreate() berikut menetapkan Toolbar sebagai panel aplikasi untuk MyChildActivity, lalu mengaktifkan tombol Naik panel aplikasi tersebut:

Kotlin

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_my_child)

        // my_child_toolbar is defined in the layout file
        setSupportActionBar(findViewById(R.id.my_child_toolbar))

        // Get a support ActionBar corresponding to this toolbar and enable the Up button
        supportActionBar?.setDisplayHomeAsUpEnabled(true)
    }
    

Java

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_my_child);

        // my_child_toolbar is defined in the layout file
        Toolbar myChildToolbar =
            (Toolbar) findViewById(R.id.my_child_toolbar);
        setSupportActionBar(myChildToolbar);

        // Get a support ActionBar corresponding to this toolbar
        ActionBar ab = getSupportActionBar();

        // Enable the Up button
        ab.setDisplayHomeAsUpEnabled(true);
    }
    

Anda tidak perlu menangkap tindakan naik dalam metode onOptionsItemSelected() aktivitas. Akan tetapi, metode tersebut harus memanggil superclass-nya, seperti yang ditunjukkan pada Respons terhadap Tindakan. Metode superclass tersebut akan merespons pilihan Naik dengan melakukan navigasi ke aktivitas induk, seperti yang ditentukan dalam manifes aplikasi.