4.2: Using an Options Menu
Task 1. Add items to the options menu
1.1 Periksa kode bilah aplikasi
Buka proyek Droid Cafe dari praktik sebelumnya. Proyek menyertakan file laah pada task yout berikut di folder res > layout lalu lakukan sesuai perintah pada task 1
1.2 Menambahkan lebih banyak item menu ke menu opsi
Lihat menu_main.xml (luaskan res > menu di tampilan Project). Ini mendefinisikan item menu dengan <item> </item>
di dalam <menu> </menu>
block. Satu-satunya item menu yang tersedia dari template adalah `action_settings’ (pilihan Settings)
Anda akan menambahkan item menu berikut ke menu opsi aplikasi Droid Cafe:
- Order: Masuk ke layar Order Activity untuk melihat pesanan makanan.
- Status: Memeriksa status pesanan makanan.
- Favorites: Menampilkan makanan favorit.
- Contact: Menghubungi restoran. Karena Anda tidak memerlukan item Settings yang ada, anda akan mengubah Settings ke Contact
Extract contact
Extract order
Extract status
Extract favorite
Task 2. Add icons for menu items
2.1 Menambahkan ikon untuk item menu
Untuk menetapkan ikon untuk tindakan, Anda terlebih dulu perlu menambahkan ikon sebagai aset gambar di folder drawable.
- Luaskan res di tampilan Project, dan klik kanan (atau Kontrol-klik) drawable.
- Pilih New > Image Asset. Dialog Configure Image Asset akan muncul.
- Pilih Action Bar and Tab Items di menu tarik-turun.
- Ubah ic_action_name ke ic_order_white (untuk tindakan Order). Layar Configure Image Asset akan tampak seperti berikut (lihat Ikon Create App dengan Image Asset Studio untuk deskripsi selengkapnya.)
Lalu kemudian Pilih Action Bar and Tab Items di menu
Kemudian lakukan hal yang sama untuk satatus, contak, dan favorite
lakukan hal yang sama untuk satatus, contact, dan favorite
lakukan hal yang sama untuk satatus favorite
lakukan hal yang sama untuk satatus favorite
2.2 Tampilkan item menu sebagai ikon di bilah aplikasi
Untuk menampilkan item menu sebagai ikon di bilah aplikasi, gunakan atribut app:showAsAction
di menu_main.xml. Nilai berikut untuk atribut akan menetapkan apakah tindakan akan muncul atau tidak di bilah aplikasi sebagai ikon:
"always"
: Selalu muncul di bilah aplikasi. (Jika tidak cukup ruang, ikon bisa menutupi ikon menu lainnya.)"ifRoom"
: Muncul di bilah aplikasi jika ada ruang."never"
: Tidak pernah muncul di bilah aplikasi; teksnya muncul di menu luapan.
3.1 Buat metode untuk menampilkan pilihan menu
3.2 Gunakan handler kejadian onOptionsItemSelected
emukan metode onOptionsItemSelected()
. Pernyataan if
di metode yang disediakan oleh template ini, menentukan apakah item menu tertentu diklik, menggunakan id
menu item (action_order kemudian Ganti pernyataan if dan penetapannya ke id dengan blok switch case berikut yang menyetel message yang sesuai berdasarkan id item menu
Tantangan 1 :
Kemudian Run
Tantangan 2:
- Ubah ikon untuk tombol aksi mengambang lagi, tetapi kali ini menjadi ikon yang sesuai untuk peta, misalnya ikon dunia.
- Di
MainActivity
, ganti tindakan untuk menampilkan snackbar dengan intent implisit untuk meluncurkan aplikasi Maps saat tombol aksi mengambang diketuk. - Tambahkan koordinat khusus berikut (untuk kantor pusat Google) dan tingkat zoom (
12
) ke sebuah string yang bernamagoogle_mtv_coord_zoom12
Kemudian Running
LEAVE A COMMENT