Widget adalah aspek penting dari penyesuaian layar utama. Anda dapat membayangkan mereka sebagai "sekilas" tampilan data dan fungsi aplikasi yang paling penting yang dapat diakses langsung di layar beranda pengguna. Pengguna dapat memindahkan widget ke seluruh panel layar utama, dan, jika didukung, mengubah ukurannya untuk menyesuaikan jumlah informasi dalam widget sesuai keinginan mereka.
Dokumentasi ini memperkenalkan berbagai jenis widget yang dapat Anda buat dan prinsip-prinsip desain yang harus diikuti. Membuat widget aplikasi menggunakan Remote View API dan tata letak XML, lihat Membuat widget sederhana. Kepada membangun widget menggunakan API gaya Kotlin dan Compose, lihat Sekilas Jetpack.
Jenis widget
Saat merencanakan widget, pikirkan jenis widget yang ingin Anda bangun. Widget biasanya termasuk dalam salah satu kategori berikut:
Widget informasi
Widget informasi biasanya menampilkan elemen informasi penting dan melacak bagaimana informasi itu berubah dari waktu ke waktu. Contoh widget informasi adalah cuaca widget, widget jam, atau widget pelacakan skor olahraga. Mengetuk widget informasi biasanya akan meluncurkan aplikasi terkait dan membuka tampilan detail informasi widget.
Widget koleksi
Widget koleksi memiliki spesialisasi dalam menampilkan beberapa elemen dengan jenis yang sama, seperti kumpulan gambar dari aplikasi galeri, kumpulan artikel dari aplikasi berita, atau kumpulan email atau pesan dari aplikasi komunikasi. Widget koleksi dapat di-scroll secara vertikal.
Widget koleksi biasanya berfokus pada kasus penggunaan berikut:
- Menjelajahi koleksi.
- Membuka elemen koleksi ke tampilan detailnya dalam .
- Berinteraksi dengan elemen, seperti menandainya sebagai selesai—dengan dukungan untuk tombol gabungan di Android 12 (API level 31).
Widget kontrol
Tujuan utama dari widget kontrol adalah untuk menampilkan fungsi yang sering digunakan sehingga sehingga pengguna dapat memicunya dari layar beranda tanpa harus membuka . Anda dapat menganggapnya sebagai {i>remote control<i} untuk sebuah aplikasi. Contoh widget kontrol adalah widget kontrol rumah yang memungkinkan pengguna menyalakan lampu di dalam rumah mengaktifkan atau menonaktifkan fitur ini.
Interaksi dengan widget kontrol dapat membuka tampilan detail yang terkait di aplikasi. Hal ini bergantung pada apakah fungsi widget kontrol menghasilkan data apa pun, seperti pada penggunaan widget penelusuran.
Widget campuran
Meskipun beberapa widget mewakili salah satu jenis di bagian—informasi, koleksi, atau kontrol—banyak widget hibrida yang menggabungkan elemen dari berbagai jenis. Misalnya, pemutar musik pada dasarnya adalah widget kontrol, tetapi juga menunjukkan kepada pengguna jalur mana yang sedang diputar, seperti widget informasi.
Saat merencanakan widget, desainlah berdasarkan salah satu jenis dasar dan tambahkan elemen jenis lainnya sesuai kebutuhan.
Mengintegrasikan widget dengan Asisten Google
Semua jenis widget dapat ditampilkan oleh Asisten Google sebagai respons terhadap pengguna perintah suara. Anda dapat mengonfigurasi widget untuk memenuhi Aplikasi Actions, yang memungkinkan pengguna menerima jawaban cepat dan pengalaman aplikasi interaktif di platform Asisten seperti Android dan Android Otomatis. Untuk mengetahui detail selengkapnya tentang fulfillment widget untuk Asisten, lihat Mengintegrasikan Action Aplikasi dengan Android widget.
Batasan widget
Meskipun widget dapat dipahami sebagai "aplikasi mini", ada batasan tertentu yang penting untuk dipahami sebelum Anda mendesain widget Anda.
Gestur
Karena aktif di layar utama, widget harus digunakan bersama dengan navigasi yang dibuat di sana. Ini akan membatasi dukungan {i>gesture <i}yang yang tersedia di widget dibandingkan dengan aplikasi layar penuh. Meskipun aplikasi memungkinkan pengguna menavigasi antar layar secara horizontal, gestur tersebut sudah diterapkan di layar utama layar untuk tujuan berpindah antar layar beranda.
Satu-satunya gestur yang tersedia untuk widget adalah sentuh dan geser vertikal.
Elemen
Mengingat keterbatasan gestur yang tersedia untuk widget, beberapa elemen penyusun UI yang mengandalkan gestur terbatas, tidak tersedia untuk widget. Untuk daftar elemen penyusun yang didukung dan informasi selengkapnya tentang batasan tata letak, lihat Membuat tata letak widget dan Menyediakan widget fleksibel tata letak.
Panduan desain
Konten widget
Widget adalah cara yang bagus untuk menarik pengguna agar menggunakan aplikasi Anda dengan cara "mengiklankan" konten baru dan menarik yang tersedia di aplikasi Anda.
Sama seperti teaser di halaman depan koran, {i>widget<i} akan digabungkan dan mengkonsentrasikan informasi aplikasi dan menyediakan koneksi ke detail yang lebih lengkap dalam aplikasi. Anda dapat mengatakan bahwa widget adalah informasi "camilan" sementara aplikasi adalah "makanan". Pastikan aplikasi Anda menampilkan detail selengkapnya tentang suatu informasi lebih penting daripada yang ditampilkan widget.
Navigasi widget
Selain konten informasi murni, pertimbangkan untuk membuat widget Anda menyediakan link navigasi ke area aplikasi yang sering digunakan. Hal ini memungkinkan pengguna menyelesaikan tugas lebih cepat dan memperluas jangkauan fungsional aplikasi ke layar utama.
Kandidat link navigasi yang baik di widget adalah:
Fungsi generatif: ini adalah fungsi yang memungkinkan pengguna membuat konten baru untuk aplikasi, seperti membuat dokumen baru atau pesan baru.
Membuka aplikasi di tingkat teratas: mengetuk elemen informasi biasanya mengarahkan pengguna ke layar detail di tingkat yang lebih rendah. Memberikan akses ke tingkat teratas aplikasi Anda menawarkan fleksibilitas navigasi yang lebih baik dan dapat menggantikan pintasan aplikasi khusus yang biasanya digunakan pengguna untuk menavigasi ke aplikasi dari layar utama. Menggunakan ikon aplikasi Anda untuk fungsi ini juga dapat memberikan identitas yang jelas kepada widget jika data yang Anda ditampilkan bersifat ambigu.
Pengubahan ukuran widget
Menyentuh & menahan widget yang dapat diubah ukurannya dan kemudian melepaskannya akan menempatkan widget tersebut ke dalam mode ubah ukuran. Pengguna dapat menggunakan tuas tarik atau sudut widget untuk mengatur ukuran yang diinginkan.
Pengubahan ukuran memungkinkan pengguna menyesuaikan tinggi dan lebar widget dalam batasan kisi-kisi penempatan layar beranda. Anda dapat memutuskan apakah widget dapat diubah ukurannya secara bebas atau dibatasi oleh perubahan ukuran horizontal atau vertikal. Anda tidak perlu mendukung pengubahan ukuran jika widget Anda berukuran tetap.
Memungkinkan pengguna mengubah ukuran widget memiliki manfaat penting:
- Mereka dapat menyesuaikan jumlah informasi yang ingin dilihat di setiap widget.
- Mereka dapat mengatur tata letak widget dan pintasan dengan lebih baik di panel layar utama.
Rencanakan strategi pengubahan ukuran untuk widget Anda sesuai dengan jenis widget membuat. Widget koleksi berbasis daftar atau petak biasanya mudah, karena mengubah ukuran widget akan memperluas atau menciutkan area scroll vertikal. Terlepas dari ukuran widget, pengguna tetap dapat men-scroll semua informasi elemen data menjadi terlihat.
Widget informasi memerlukan lebih banyak perencanaan langsung, karena dapat di-scroll dan semua konten harus sesuai dengan ukuran yang ditentukan. Anda harus secara dinamis sesuaikan konten dan tata letak widget ke ukuran yang ditentukan pengguna melalui ubah ukuran.
Pada contoh berikut, pengguna dapat mengubah ukuran widget cuaca menjadi tiga langkah, mengekspos informasi yang lebih lengkap tentang cuaca di lokasi saat ini widget-nya berkembang.
Untuk setiap ukuran widget, tentukan seberapa banyak informasi aplikasi Anda yang ditampilkan. Untuk ukuran yang lebih kecil, berkonsentrasilah pada informasi penting, lalu tambahkan konteks informasi saat widget tumbuh secara horizontal dan vertikal.
Pertimbangan tata letak
Anda mungkin ingin menata letak widget sesuai dengan dimensi penempatan perangkat yang Anda gunakan untuk mengembangkan. Ini bisa menjadi langkah awal yang perkiraan, tetapi perhatikan hal-hal berikut:
- Merencanakan strategi pengubahan ukuran widget di berbagai "bucket ukuran" bukannya dimensi {i>variabel grid<i} memberi Anda hasil yang paling dapat diandalkan.
- Jumlah, ukuran, dan jarak sel dapat sangat bervariasi dari satu perangkat ke perangkat seluler. Oleh karena itu, sangat penting bahwa widget Anda fleksibel dan dapat mengakomodasi lebih banyak atau lebih sedikit ruang dari yang diperkirakan.
- Saat pengguna mengubah ukuran widget, sistem akan merespons dengan rentang ukuran dp di yang dapat digambar ulang oleh widget Anda.
- Mulai Android 12, Anda dapat memberikan ukuran yang lebih disempurnakan
dan tata letak yang
lebih fleksibel. Hal ini mencakup:
- Menentukan batasan ukuran widget. Misalnya, Anda dapat menentukan ukuran target untuk widget Anda—dalam petak sel—serta ukuran semaksimum mungkin.
- Menyediakan tata letak responsif, yang berubah bergantung pada ukuran widget.
- Menyediakan tata letak ukuran persis, yang memungkinkan peluncur merespons dengan opsi ukuran untuk mode potret dan lanskap, untuk ponsel, atau dengan empat ukuran untuk perangkat foldable.
- Menggunakan panduan yang diperbarui dan API untuk menentukan ukuran yang tepat untuk widget Anda.
Konfigurasi widget oleh pengguna
Terkadang, pengguna perlu menyiapkan widget sebelum dapat digunakan. Pikirkan widget email di mana pengguna harus memilih folder email sebelumnya kotak masuk dapat ditampilkan atau widget foto statis yang mengharuskan pengguna gambar dari galeri yang akan ditampilkan. Widget Android menampilkan pilihan konfigurasinya tepat setelah pengguna menempatkan widget ke layar utama.
Checklist desain widget
- Fokus pada bagian kecil informasi yang dapat dilihat di widget Anda. Perluas informasi di aplikasi Anda.
- Pilih jenis widget yang tepat untuk tujuan Anda.
- Rencanakan adaptasi konten untuk widget Anda dengan berbagai ukuran.
- Buat tata letak widget Anda independen dari orientasi dan perangkat dengan memastikan tata letak dapat diluaskan dan diperkecil.
- Pertimbangkan apakah widget Anda memerlukan konfigurasi tambahan atau tidak.