GoSnackbar — pesan yang menempatkan dirinya sendiri
Duduk di bawah (atau di atas), di atas area aman dan keyboard, lalu pergi dengan sendirinya. Tanpa itu Anda menulis lapisannya, penempatannya, pewaktunya, dan pembongkarannya di setiap layar yang harus mengatakan "tersimpan".
snack.show_text("Tersimpan", GoTheme.SUCCESS)
# Kesempatan untuk membatalkan — 0 adalah tombol pertama, -1 berarti waktunya habis
if await snack.post({"text": "Item dibuang", "actions": ["Batalkan"]}) == 0:
restore_item()
Pesan-pesannya mengantre alih-alih saling menimpa, dan pengulangan baris yang sama digabung — server yang gagal empat kali sedetik tidak lagi menumpuk empat menit peringatan. Snackbar tanpa tombol meneruskan input, jadi game di bawahnya terus berjalan.
GoDialogs. Tombol di sini harus bersifat opsional — Batalkan,
Rincian, Coba lagi.
GoNotice adalah separuh lainnya dari pasangan ini: ia tidak pernah mengambil input atau fokus, dan layar yang
memilikinya yang menentukan ke mana ia pergi. Ia tidak bisa memuat tombol; yang ini bisa.
GoSpinner — menunggu tanpa tahu kapan berakhirnya
Game yang berbicara dengan server membutuhkan ini lebih daripada apa pun di halaman ini: layar yang diam terbaca sebagai crash. Satu panggilan mengubah tombol yang Anda tekan menjadi spinner di tempatnya.
GoSpinner.busy(buy_button, true)
var ok := await server.purchase(item)
GoSpinner.busy(buy_button, false)
Tombolnya mempertahankan ukurannya — labelnya menjadi transparan alih-alih hilang, jadi barisnya tidak melompat — dan
ia dimatikan selagi berputar. Bagian kedua itulah intinya: sebuah pembelian tidak boleh terpicu dua kali selagi Anda
await. Dengan reduce_motion menyala ia tidak berputar; tiga titik berdenyut sebagai gantinya.
Kemajuan yang bisa Anda ukur itu GoBar. Spinner tidak menjanjikan apa pun tentang kapan ia berakhir.
GoBadge — titik belum dibaca, tanda BARU, dan 99+
GoBadge.attach(mail_button, unread_count) # menyembunyikan diri saat nol
GoBadge.attach(shop_button, 0, "BARU")
GoBadge.attach(friend_button, 3, "", true) # sebuah titik — "ada sesuatu di sana"
Ia menggantung di pojok kanan atas induknya dengan anchor, jadi ia mengikuti induk yang ukurannya baru ditentukan belakangan, dan memasangnya dua kali mengembalikan lencana yang sama. Pakai angka bila jumlahnya mengubah apa yang dilakukan pemain, dan titik bila yang penting hanya "ada sesuatu".
Warna teksnya dipilih agar kontras dengan warna apa pun yang dipakai skin untuk mengecat lencananya — tidak pernah diasumsikan putih — dan ia membawa nama aksesibilitas, karena titik berwarna tidak mengatakan apa-apa kepada pembaca layar.