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).
Direkomendasikan untuk Anda
- Catatan: teks link ditampilkan saat JavaScript nonaktif
- Referensi di Compose
- Aksesibilitas di Compose
- Grafik di Compose