Carregar uma imagem do disco
Use o elemento combinável Image para mostrar um gráfico na tela. Para carregar uma imagem
(por exemplo, PNG, JPEG, WEBP) ou um recurso vetorial do disco, use a
API painterResource com a referência necessária. Não é preciso saber o tipo
do recurso, basta usar a painterResource nos modificadores Image ou paint.
DrawScope:
Image( painter = painterResource(id = R.drawable.dog), contentDescription = stringResource(id = R.string.dog_content_description) )
Para garantir que o app seja acessível, forneça uma contentDescription para
elementos visuais na tela. O TalkBack lê a descrição do conteúdo. Portanto, você
precisa garantir que o texto seja significativo se lido em voz alta e traduzido. No
exemplo acima, um stringResource() é usado para carregar a descrição de conteúdo
traduzida do arquivo strings.xml. Se o elemento visual na tela for
puramente para decoração visual, defina contentDescription como null para que
o leitor de tela a ignore.
Se você precisar de uma funcionalidade específica de ImageBitmap de nível inferior, use
ImageBitmap.imageResource() para carregar um bitmap. Para saber mais sobre
ImageBitmaps, leia a seção ImageBitmap versus ImageVector.
Suporte a drawables
No momento, o painterResource tem suporte aos seguintes tipos de drawable:
AnimatedVectorDrawableBitmapDrawable(PNG, JPG, WEBP)ColorDrawableVectorDrawable
Carregar uma imagem da Internet
Para carregar uma imagem da Internet, há várias bibliotecas de terceiros disponíveis para ajudar você a lidar com o processo. As bibliotecas de carregamento de imagens fazem grande parte do trabalho pesado para você. Elas processam o armazenamento em cache (para não fazer o download da imagem várias vezes) e a lógica da rede para fazer o download da imagem e mostrá-la na tela.
Por exemplo, para carregar uma imagem com Coil
da Instacart, adicione a biblioteca ao arquivo do Gradle e use uma AsyncImage para carregar uma imagem de um URL:
AsyncImage( model = "https://example.com/image.jpg", contentDescription = "Translated description of what the image contains" )
Coil
Uma biblioteca de carregamento de imagens fornecida pelas corrotinas do Kotlin (Instacart).
Glide
Uma biblioteca de carregamento rápido e eficiente de imagens para Android com foco em rolagem suave (Google).
Outros recursos
Recomendados para você
- Observação: o texto do link aparece quando o JavaScript está desativado.
- Recursos no Compose
- Acessibilidade no Compose
- Gráficos no Compose