Wczytywanie obrazu z dysku
Użyj funkcji kompozycyjnej Image
, aby wyświetlić grafikę na ekranie. Aby wczytać z dysku obraz (np. PNG, JPEG, WEBP) lub zasób wektorowy, użyj interfejsu API painterResource
z odwołaniem do obrazu. Nie musisz znać typu komponentu. Wystarczy, że użyjesz modyfikatorów painterResource
w Image
lub paint
.
DrawScope
:
Image( painter = painterResource(id = R.drawable.dog), contentDescription = stringResource(id = R.string.dog_content_description) )
Aby zapewnić dostępność aplikacji, podaj contentDescription
dla elementów wizualnych na ekranie. TalkBack odczytuje opis treści, więc musisz zadbać o to, aby tekst był zrozumiały po odczytaniu na głos i przetłumaczeniu. W przykładzie powyżej tag stringResource()
służy do wczytywania opisu przetłumaczonych treści z pliku strings.xml
. Jeśli element wizualny na ekranie służy wyłącznie do dekoracji, ustaw wartość contentDescription
na null
, aby czytnik ekranu go ignorował.
Jeśli potrzebujesz funkcji na niższym poziomie ImageBitmap
, możesz użyć ImageBitmap.imageResource()
, aby wczytać mapę bitową. Więcej informacji o ImageBitmap znajdziesz w sekcji ImageBitmap a ImageVector.
Obsługa elementów rysowalnych
painterResource
obsługuje obecnie te typy elementów do rysowania:
AnimatedVectorDrawable
BitmapDrawable
(PNG, JPG, WEBP)ColorDrawable
VectorDrawable
Wczytywanie obrazu z internetu
Aby wczytać obraz z internetu, możesz skorzystać z kilku bibliotek innych firm, które ułatwią Ci ten proces. Biblioteki wczytywania obrazów wykonują za Ciebie większość pracy. Obsługują zarówno buforowanie (dzięki czemu nie musisz pobierać obrazu wielokrotnie), jak i logikę sieciową, aby pobrać obraz i wyświetlić go na ekranie.
Aby na przykład wczytać obraz za pomocą 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" )
Cewka
Biblioteka wczytywania obrazów oparta na Kotlin Coroutines (Instacart).
Glide
Szybka i wydajna biblioteka do ładowania obrazów na Androidzie, która zapewnia płynne przewijanie (Google).
Dodatkowe materiały
Polecane dla Ciebie
- Uwaga: tekst linku jest wyświetlany, gdy JavaScript jest wyłączony.
- Zasoby w funkcji Twórz
- Ułatwienia dostępu w Compose
- Grafika w komponowaniu