Anda dapat menggunakan
Snackbar
untuk
menampilkan pesan singkat kepada pengguna. Tidak seperti Notifikasi, pesan akan otomatis hilang setelah beberapa saat. Snackbar
sangat ideal untuk pesan singkat yang tidak perlu ditindaklanjuti oleh pengguna. Misalnya, aplikasi email dapat menggunakan Snackbar
untuk memberi tahu pengguna bahwa aplikasi
berhasil mengirim email.
Menggunakan CoordinatorLayout
Snackbar
dilampirkan ke tampilan. Snackbar
menyediakan fungsi dasar jika dilampirkan ke objek apa pun yang berasal dari
class View
, seperti
objek tata letak umum. Namun, jika Snackbar
dilampirkan ke
CoordinatorLayout
,
Snackbar
akan mendapatkan fitur tambahan:
- Pengguna dapat menutup
Snackbar
dengan menggesernya. - Tata letak akan memindahkan elemen UI lainnya saat
Snackbar
muncul. Misalnya, jika tata letak memilikiFloatingActionButton
, tata letak akan memindahkan tombol ke atas saat menampilkanSnackbar
, bukan menarikSnackbar
ke atas tombol. Anda dapat melihat tampilannya pada gambar 1.
Class CoordinatorLayout
menyediakan superset
fungsi
FrameLayout
.
Jika aplikasi sudah menggunakan FrameLayout
, Anda dapat mengganti tata letak tersebut
dengan CoordinatorLayout
untuk mengaktifkan fungsi Snackbar
lengkap. Jika aplikasi Anda menggunakan objek tata letak lain, gabungkan elemen tata letak
yang ada di CoordinatorLayout
, seperti ditunjukkan dalam contoh
berikut:
<android.support.design.widget.CoordinatorLayout android:id="@+id/myCoordinatorLayout" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent"> <!-- Here are the existing layout elements, now wrapped in a CoordinatorLayout. --> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <!-- ...Toolbar, other layouts, other elements... --> </LinearLayout> </android.support.design.widget.CoordinatorLayout>
Tetapkan tag android:id
untuk CoordinatorLayout
Anda.
Anda memerlukan ID tata letak saat menampilkan pesan.
Menampilkan pesan
Ada dua langkah untuk menampilkan pesan. Pertama, buat objek Snackbar
dengan teks pesan. Kemudian, panggil metode
show()
objek tersebut untuk menampilkan pesan kepada pengguna.
Membuat objek Snackbar
Buat objek Snackbar
dengan memanggil metode
Snackbar.make()
statis. Saat Anda membuat Snackbar
, tentukan pesan yang akan ditampilkan dan lama waktu pesan ditampilkan:
Kotlin
val mySnackbar = Snackbar.make(view, stringId, duration)
Java
Snackbar mySnackbar = Snackbar.make(view, stringId, duration);
- kali dilihat
-
Tampilan untuk melampirkan
Snackbar
. Metode ini menelusuri hierarki tampilan dari tampilan yang diteruskan hingga mencapaiCoordinatorLayout
atau tampilan konten dekorasi jendela. Biasanya, lebih mudah untuk meneruskanCoordinatorLayout
yang menyertakan konten Anda. - stringId
- ID resource pesan yang ingin Anda tampilkan. Ini dapat berupa teks berformat atau tidak berformat.
- tonton
-
Lamanya waktu untuk menampilkan pesan. Ini dapat berupa
LENGTH_SHORT
atauLENGTH_LONG
.
Menampilkan pesan kepada pengguna
Setelah Anda membuat Snackbar
, panggil metode show()
-nya
untuk menampilkan Snackbar
kepada pengguna:
Kotlin
mySnackbar.show()
Java
mySnackbar.show();
Sistem tidak menampilkan beberapa objek Snackbar
sekaligus, jadi jika tampilan saat ini menampilkan Snackbar
lain, sistem akan mengantrekan Snackbar
dan menampilkannya setelah Snackbar
saat ini
berakhir atau ditutup.
Jika ingin menampilkan pesan kepada pengguna dan tidak perlu memanggil salah satu metode utilitas
objek Snackbar
, Anda tidak perlu menyimpan
referensi ke Snackbar
setelah memanggil show()
. Karena
alasan ini, penggunaan perantaian metode adalah hal yang umum untuk membuat dan menampilkan
Snackbar
dalam satu pernyataan:
Kotlin
Snackbar.make( findViewById(R.id.myCoordinatorLayout), R.string.email_sent, Snackbar.LENGTH_SHORT ).show()
Java
Snackbar.make(findViewById(R.id.myCoordinatorLayout), R.string.email_sent, Snackbar.LENGTH_SHORT) .show();