Halaman ini menjelaskan praktik terbaik untuk berinteraksi dengan peta Navigasi di aplikasi Anda.
Gunakan SupportNavigationFragment
, bukan NavigationView
, jika memungkinkan
SupportNavigationFragment
adalah wrapper untuk memudahkan penanganan
callback siklus proses NavigationView
, sehingga Anda tidak perlu mengelola callback
ini sendiri. Metode ini tidak terlalu rentan terhadap error dan merupakan cara yang lebih disukai untuk
menggunakan Navigasi di aplikasi Anda. Saat menggunakan SupportNavigationFragment
, pastikan untuk tidak
memanggil peristiwa siklus proses NavigationView
.
Jika menggunakan NavigationView
, gunakan pengurutan yang ketat saat memanggil metode siklus proses
NavigationView
menghosting peta Navigasi dan mengikuti peristiwa siklus proses
secara cermat sebagai aktivitas dan fragmen Android, mengambil tindakan tertentu saat
peristiwa siklus proses ini dipanggil. NavigationView
mengeksekusi beberapa inisialisasi
di NavigationView#onCreate
dan NavigationView#onStart
, serta pembersihan di
NavigationView#onStop
dan NavigationView#onDestroy
, serta saat peristiwa
siklus proses lainnya diproses.
Metode siklus proses NavigationView
memiliki arti yang sama seperti untuk aktivitas
atau fragmen Android. Misalnya, onCreate()
dari NavigationView
secara kasar
diterjemahkan dan harus dipanggil oleh callback siklus proses dari aktivitas
atau fragmen Android. Karena callback siklus proses NavigationView
didasarkan
dan dipanggil dalam urutan yang sama dengan callback siklus proses Android, pengurutan
yang kuat dari metode NavigationView ini diperlukan. Jika tidak, Anda mungkin
mengalami kebocoran
memori, error
UI, lokasi tidak diperbarui, dan masalah lainnya.
Untuk informasi selengkapnya tentang siklus proses aktivitas Android, lihat bagian Konsep siklus proses aktivitas dalam dokumentasi developer Android.
Tabel berikut menunjukkan kapan metode siklus proses lainnya harus dipanggil, setelah metode siklus proses yang ditentukan:
Metode siklus proses | Dipanggil di mana dalam siklus proses aktivitas | Dipanggil setelah metode siklus proses |
---|---|---|
onConfigurationChanged()
|
Dipanggil saat UI berada di latar depan dan konfigurasi berubah. | Selalu setelah onStart()
|
onTrimMemory()
|
Dipanggil saat aktivitas berada di latar belakang. | Selalu setelah onPause()
|
onSaveInstance()
|
Dipanggil sebelum aktivitas dihancurkan. | Selalu setelah onStop()
|
Jangan panggil metode siklus proses ini beberapa kali tanpa memanggil
metode penutupan yang sesuai terlebih dahulu. Selain itu, perlu diingat bahwa jika beberapa
callback siklus proses Android ini dikelola oleh aplikasi itu sendiri, dan
NavigationView
ditambahkan ke fragmen setelah pembuatan atau mulai, aplikasi
harus memanggil metode tertentu itu sendiri dalam urutan yang tepat untuk
melakukan inisialisasi Navigation SDK dengan benar.
Untuk panduan tambahan tentang penggunaan metode ini, lihat aplikasi demo Navigation SDK.
Jika menggunakan NavigationView
, panggil peristiwa siklus proses dari aktivitas atau fragmen, bukan keduanya
Untuk mempertahankan pengurutan metode siklus proses yang ketat, panggil peristiwa ini dari callback siklus proses aktivitas atau fragmen, yang menerima peristiwa ini secara berurutan. Pendekatan ini memastikan bahwa aplikasi tidak perlu berkoordinasi antara fragmen dan aktivitas serta menyebabkan panggilan duplikat.