Register now for Android Dev Summit 2019!

Menyiapkan panel aplikasi

Dalam bentuknya yang paling sederhana, panel tindakan menampilkan judul aktivitas di satu sisi dan menu tambahan di sisi yang lain. Meskipun bentuknya sederhana, panel aplikasi mampu menyajikan informasi yang berguna bagi pengguna, dan membantu memberikan tampilan serta nuansa yang konsisten untuk aplikasi Android.

Gambar 1. Panel aplikasi dengan judul aplikasi dan menu tambahan.

Mulai Android 3.0 (API level 11), semua aktivitas dengan tema default menggunakan ActionBar sebagai panel aplikasi. Namun, fitur panel aplikasi secara bertahap telah ditambahkan ke ActionBar native melalui berbagai rilis Android. Oleh karena itu, ActionBar native berperilaku berbeda tergantung pada versi sistem Android yang digunakan perangkat. Sebaliknya, fitur-fitur terbaru ditambahkan ke Toolbar versi library dukungan, dan fitur tersebut tersedia pada setiap perangkat yang bisa menggunakan library dukungan.

Dengan alasan ini, Anda sebaiknya menggunakan kelas Toolbar dari library dukungan untuk menerapkan panel aplikasi aktivitas. Penggunaan toolbar library dukungan membantu memastikan agar aplikasi Anda memiliki perilaku yang konsisten di berbagai perangkat. Misalnya, widget Toolbar memberikan pengalaman desain material di perangkat yang menjalankan Android 2.1 (API level 7) atau yang lebih baru, tetapi panel tindakan native tidak mendukung desain material kecuali perangkat menjalankan Android 5.0 (API level 21) atau yang lebih baru.

Menambahkan Toolbar ke Aktivitas

Langkah-langkah berikut menjelaskan cara menyiapkan Toolbar sebagai panel aplikasi aktivitas:
  1. Tambahkan library dukungan v7 appcompat ke project Anda, sebagaimana dijelaskan dalam Penyiapan Library Dukungan.
  2. Pastikan aktivitas menyertakan ekstensi AppCompatActivity:

    Kotlin

        class MyActivity : AppCompatActivity() {
          // ...
        }
        

    Java

        public class MyActivity extends AppCompatActivity {
          // ...
        }
        

    Catatan: Lakukan perubahan ini pada setiap aktivitas dalam aplikasi Anda yang menggunakan Toolbar sebagai panel aplikasi.

  3. Dalam manifes aplikasi, setel elemen <application> agar menggunakan salah satu tema NoActionBar appcompat. Penggunaan salah satu tema tersebut akan mencegah aplikasi memakai kelas ActionBar native untuk menyediakan panel aplikasi. Contoh:
        <application
            android:theme="@style/Theme.AppCompat.Light.NoActionBar"
            />
        
  4. Tambahkan Toolbar ke layout aktivitas. Misalnya, kode layout berikut menambahkan Toolbar dan menampilkannya secara floating di atas aktivitas:
        <android.support.v7.widget.Toolbar
           android:id="@+id/my_toolbar"
           android:layout_width="match_parent"
           android:layout_height="?attr/actionBarSize"
           android:background="?attr/colorPrimary"
           android:elevation="4dp"
           android:theme="@style/ThemeOverlay.AppCompat.ActionBar"
           app:popupTheme="@style/ThemeOverlay.AppCompat.Light"/>
        

    Lihat Spesifikasi Desain Material untuk mendapatkan rekomendasi terkait elevasi panel aplikasi.

    Tempatkan toolbar di bagian atas layout aktivitas, karena Anda menggunakannya sebagai panel aplikasi.

  5. Dalam metode onCreate() aktivitas, panggil metode setSupportActionBar() aktivitas, lalu teruskan toolbar aktivitas. Metode ini menetapkan toolbar sebagai panel aplikasi untuk aktivitas tersebut. Contoh:

    Kotlin

        override fun onCreate(savedInstanceState: Bundle?) {
            super.onCreate(savedInstanceState)
            setContentView(R.layout.activity_my)
            // Note that the Toolbar defined in the layout has the id "my_toolbar"
            setSupportActionBar(findViewById(R.id.my_toolbar))
        }
        

    Java

        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_my);
            Toolbar myToolbar = (Toolbar) findViewById(R.id.my_toolbar);
            setSupportActionBar(myToolbar);
        }
        

Kini aplikasi Anda memiliki panel tindakan dasar. Secara default, panel tindakan hanya berisi nama aplikasi dan menu tambahan. Awalnya, menu opsi hanya berisi item Setelan. Anda dapat menambahkan tindakan lainnya ke panel tindakan dan menu tambahan, sebagaimana dijelaskan dalam Menambahkan dan Menangani Tindakan.

Menggunakan Metode Utilitas Panel Aplikasi

Setelah menetapkan toolbar sebagai panel aplikasi aktivitas, Anda memiliki akses ke berbagai metode utilitas yang disediakan oleh kelas ActionBar dari library dukungan v7 appcompat. Pendekatan ini memungkinkan Anda melakukan beberapa hal berguna, seperti menyembunyikan dan menampilkan panel aplikasi.

Untuk menggunakan metode utilitas ActionBar, panggil metode getSupportActionBar() aktivitas. Metode ini mengembalikan referensi ke objek ActionBar appcompat. Setelah memiliki referensi tersebut, Anda dapat memanggil metode ActionBar mana pun untuk menyesuaikan panel aplikasi. Misalnya, untuk menyembunyikan panel aplikasi, panggil ActionBar.hide().