Wczytywanie obrazu z dysku
Aby wyświetlić grafikę na ekranie, użyj komponentu Image. Aby wczytać obraz
(np. PNG, JPEG, WEBP) lub zasób wektorowy z dysku, użyj interfejsu API
painterResource z odwołaniem do obrazu. Nie musisz znać typu
zasobu. Wystarczy, że użyjesz painterResource w Image lub paint modyfikatorach.
DrawScope:
Image( painter = painterResource(id = R.drawable.dog), contentDescription = stringResource(id = R.string.dog_content_description) )
Aby aplikacja była dostępna, podaj contentDescription dla elementów wizualnych
na ekranie. TalkBack odczytuje opis treści, dlatego musisz się upewnić, że tekst jest zrozumiały po odczytaniu na głos i przetłumaczeniu. W poprzednim przykładzie do wczytania przetłumaczonego opisu treści z pliku strings.xml użyto stringResource(). Jeśli element wizualny na ekranie służy wyłącznie do dekoracji, ustaw contentDescription na null, aby czytnik ekranu go ignorował.
Jeśli potrzebujesz funkcji specyficznych dla ImageBitmap na niższym poziomie, możesz użyć
ImageBitmap.imageResource() do wczytania mapy bitowej. Więcej informacji o
ImageBitmap znajdziesz w sekcji ImageBitmap a ImageVector.
Obsługa obiektów rysowalnych
painterResource obsługuje następujące typy obiektów rysowalnych:
AnimatedVectorDrawableBitmapDrawable(PNG, JPG, WEBP)ColorDrawableVectorDrawable
Wczytywanie obrazu z internetu
Aby wczytać obraz z internetu, możesz skorzystać z kilku bibliotek innych firm, które pomogą Ci w tym procesie. Biblioteki do wczytywania obrazów wykonują za Ciebie wiele ciężkich zadań. Obsługują zarówno buforowanie (dzięki czemu nie musisz pobierać obrazu wiele razy), jak i logikę sieciową, aby pobrać obraz i wyświetlić go na ekranie.
Aby na przykład wczytać obraz za pomocą biblioteki Coil
z Instacart, dodaj bibliotekę do pliku Gradle i użyj AsyncImage, aby wczytać obraz z adresu URL:
AsyncImage( model = "https://example.com/image.jpg", contentDescription = "Translated description of what the image contains" )
Spirala
Biblioteka do wczytywania obrazów oparta na Kotlin Coroutines (Instacart).
Glide
Szybka i wydajna biblioteka do wczytywania obrazów na Androidzie, która koncentruje się na płynnym przewijaniu (Google).
Dodatkowe materiały
Polecane dla Ciebie
- Uwaga: tekst linku jest wyświetlany, gdy język JavaScript jest wyłączony.
- Zasoby w funkcji Compose
- Ułatwienia dostępu w Compose
- Grafika w Compose