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. Dalam
contoh sebelumnya, 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 mendukung jenis drawable berikut:
AnimatedVectorDrawableBitmapDrawable(PNG, JPG, WEBP)ColorDrawableVectorDrawable
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