Anda dapat menggunakan
Snackbar
untuk
menampilkan pesan singkat kepada pengguna. Tidak seperti Notifikasi, pesan otomatis hilang setelah beberapa saat. Snackbar
ideal untuk pesan singkat yang tidak perlu ditindaklanjuti 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 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 keluar. - Tata letak memindahkan elemen UI lainnya saat
Snackbar
muncul. Misalnya, jika memilikiFloatingActionButton
, tata letak akan memindahkan tombol ke atas saat menampilkanSnackbar
, bukan menggambarSnackbar
di atas tombol. Anda dapat melihat tampilannya pada gambar 1.
Class CoordinatorLayout
menyediakan superset dari
fungsi
FrameLayout
.
Jika aplikasi Anda 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 dalam CoordinatorLayout
, seperti ditunjukkan pada 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>
Setel 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 ditampilkannya dan berapa lama 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. Hal ini dapat berupa teks yang diformat atau tidak berformat.
- tonton
-
Durasi untuk menampilkan pesan. ID 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
secara bersamaan, jadi jika tampilan saat ini menampilkan Snackbar
lain, sistem akan mengantrekan Snackbar
Anda dan menampilkannya setelah
Snackbar
saat ini berakhir atau ditutup.
Jika Anda ingin menampilkan pesan kepada pengguna dan tidak perlu memanggil metode utilitas objek Snackbar
apa pun, Anda tidak perlu mempertahankan referensi ke Snackbar
setelah memanggil show()
. Oleh
karena itu, umum untuk menggunakan perantaian metode 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();