Memuat gambar dari disk
Gunakan composable Image untuk menampilkan grafik di layar. Untuk memuat gambar
(misalnya: PNG, JPEG, WEBP) atau aset vektor dari disk, gunakan
painterResource API dengan referensi gambar Anda. Anda tidak perlu mengetahui jenis
aset, cukup gunakan painterResource di pengubah Image atau paint.
DrawScope:
Image( painter = painterResource(id = R.drawable.dog), contentDescription = stringResource(id = R.string.dog_content_description) )
Untuk memastikan aplikasi Anda dapat diakses, sediakan contentDescription untuk
elemen visual di layar. TalkBack membacakan deskripsi konten, sehingga Anda
harus memastikan bahwa teks bermakna jika dibacakan dengan keras dan diterjemahkan. Pada
contoh di atas, stringResource() digunakan untuk memuat deskripsi konten
yang diterjemahkan dari file strings.xml. Jika elemen visual Anda di layar
hanya untuk dekorasi visual, setel contentDescription ke null agar
pembaca layar mengabaikannya.
Jika memerlukan fungsi khusus ImageBitmap level lebih rendah, Anda dapat menggunakan
ImageBitmap.imageResource() untuk memuat Bitmap. Untuk informasi selengkapnya tentang
ImageBitmap, baca bagian ImageBitmap versus ImageVector.
Dukungan drawable
painterResource saat ini mendukung jenis drawable berikut:
- AnimatedVectorDrawable
- BitmapDrawable(PNG, JPG, WEBP)
- ColorDrawable
- VectorDrawable
Memuat gambar dari internet
Untuk memuat gambar dari internet, ada beberapa library pihak ketiga yang tersedia untuk membantu Anda menangani proses ini. Library pemuatan gambar melakukan banyak tugas berat bagi Anda; Library ini menangani caching (sehingga Anda tidak perlu mendownload gambar beberapa kali) dan logika jaringan untuk mendownload gambar dan menampilkannya di layar.
Misalnya, untuk memuat gambar dengan Coil dari Instacart, tambahkan library ke
file gradle Anda, dan gunakan AsyncImage untuk memuat gambar dari URL:
AsyncImage( model = "https://example.com/image.jpg", contentDescription = "Translated description of what the image contains" )
Coil
Library pemuatan gambar yang didukung oleh Coroutine Kotlin (Instacart).
Glide
Library pemuatan gambar yang cepat dan efisien untuk Android yang berfokus pada scroll yang lancar (Google).
Referensi lainnya
Direkomendasikan untuk Anda
- Catatan: teks link ditampilkan saat JavaScript nonaktif
- Resource di Compose
- Aksesibilitas di Compose
- Grafik dalam Compose
