loader image

Existe diversas formas de carregar uma imagem que vem da internet na nossa aplicação Android, porém a melhor forma que existe atualmente é utilizar biblioteca de terceiros. As principais Bibliotecas de carregamento de imagens para o sistema Android são: Glide e Picasso.

Essas Bibliotecas de carregamento de imagens, facilitam muito o nosso desenvolvimento, pois além de conseguir fazer o carregamento da imagem pela web, também possuem recursos de redimensionamento.

Nesse artigo vamos utilizar a Biblioteca do Glide para fazer o carregamento de uma imagem que vem da web.

Vamos ao exemplo prático.

Primeiro passo é adicionar as dependências do Glide no nosso build.gradle a nível de App, para acessar os códigos oficiais da biblioteca, basta acessar este link do GitHub: https://github.com/bumptech/glide

Dependências do Glide

Dentro da página oficial do Glide, vá na parte de Download e copie essas dependências:

implementation 'com.github.bumptech.glide:glide:4.13.0'
annotationProcessor 'com.github.bumptech.glide:compiler:4.13.0'

Acesse o seu projeto no Android Studio e clique em build.gradle a nível de App e dentro das chaves de dependencies, cole as duas dependências do Glide.

Feito isso, basta clicar em Sync Now para sincronizar a biblioteca do Glide no seu projeto Android.

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:gravity="center"
    tools:context=".MainActivity">

    <ImageView
        android:id="@+id/imagem"
        android:layout_width="match_parent"
        android:layout_height="200dp"
        android:src="@color/black"
        android:layout_margin="20dp"
        android:scaleType="centerCrop"/>
    
    <Button
        android:id="@+id/btCarregarImagem"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Carregar Imagem"
        android:layout_gravity="center"
        android:textSize="18sp"
        android:textColor="@color/white"
        android:textAllCaps="false"
        android:textStyle="bold"/>

</LinearLayout>

Aplicativo Android de Teste - sem nenhuma imagem

Vamos precisar de um componente de imagem(ImageView) para poder renderizar a imagem que vai vir da internet, eu também vou criar um botão e ao clicar no botão agente vai carregar a imagem no ImageView, só vai carregar se clicar no botão, porém fique à vontade para utilizar a lógica que desejar.

Imagem do site Pixabay

Pra testar o carregamento de imagem, eu vou pegar uma imagem do banco gratuito de imagens do site Pixabay, basta copiar o endereço da imagem para poder acessar a sua Url.

MainActivity.kt

package com.marcos.lorem

import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import com.bumptech.glide.Glide
import com.marcos.lorem.databinding.ActivityMainBinding

class MainActivity : AppCompatActivity() {

    private lateinit var binding: ActivityMainBinding
    private val url = "https://cdn.pixabay.com/photo/2018/11/17/22/15/trees-3822149_960_720.jpg"

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        binding = ActivityMainBinding.inflate(layoutInflater)
        setContentView(binding.root)


        binding.btCarregarImagem.setOnClickListener {
            Glide.with(this).load(url).into(binding.imagem)
        }
        
    }
}

Coloque a url da imagem dentro de uma variável do tipo String, nesse exemplo estamos utilizando a linguagem Kotlin, colocamos o caminho da imagem dentro da variável url que está como privada, feito isso basta definir uma ação de clique para o botão de carregar imagem, e ao clicar no botão o Glide vai fazer o carregamento e redimensionamento da imagem no componente ImageView (imagem).

Basicamente você inicia a classe Glide depois você passa o contexto da atividade para o método with( ), dentro do método load( ) vamos carregar a imagem que vem da web, passando a variável url para dentro do método load( ), feito isso basta definir o método into( ) para definir onde essa imagem vai ser renderizada, que nesse caso é o componente ImageView com id “imagem”, passamos através da biblioteca do ViewBinding o id imagem.

Não podemos esquecer de colocar uma permissão dentro do nosso arquivo AndroidManifest.xml de acesso a internet, pois o Glide precisa se comunicar com a web para poder fazer o download da imagem.

Permissão de acesso a internet:

<uses-permission android:name="android.permission.INTERNET"/>

E o resultado final será este:

Carregando uma imagem com a biblioteca do Glide

O Carregamento da imagem foi concluído com sucesso, muito simples o processo de carregamento utilizando a biblioteca do Glide.

Se você quiser se profissionalizar e aprender a criar aplicativos profissionais para o Android, com ideias reais de mercado e poder conseguir a sua primeira vaga com Desenvolvedor Android Júnior, trabalhar como Freelancer, ou até se tornar um Desenvolvedor independente criando aplicativos e gerando receita de forma ilimitada ➜ CLIQUE AQUI e conheça o Android Master.

Se você gostou do conteúdo deste post, compartilhe com os seus amigos e deixe o seu comentário logo abaixo.

um forte abraço e até o próximo post.

Damos valor à sua privacidade

Nós e os nossos parceiros armazenamos ou acedemos a informações dos dispositivos, tais como cookies, e processamos dados pessoais, tais como identificadores exclusivos e informações padrão enviadas pelos dispositivos, para as finalidades descritas abaixo. Poderá clicar para consentir o processamento por nossa parte e pela parte dos nossos parceiros para tais finalidades. Em alternativa, poderá clicar para recusar o consentimento, ou aceder a informações mais pormenorizadas e alterar as suas preferências antes de dar consentimento. As suas preferências serão aplicadas apenas a este website.

Cookies estritamente necessários

Estes cookies são necessários para que o website funcione e não podem ser desligados nos nossos sistemas. Normalmente, eles só são configurados em resposta a ações levadas a cabo por si e que correspondem a uma solicitação de serviços, tais como definir as suas preferências de privacidade, iniciar sessão ou preencher formulários. Pode configurar o seu navegador para bloquear ou alertá-lo(a) sobre esses cookies, mas algumas partes do website não funcionarão. Estes cookies não armazenam qualquer informação pessoal identificável.

Cookies de desempenho

Estes cookies permitem-nos contar visitas e fontes de tráfego, para que possamos medir e melhorar o desempenho do nosso website. Eles ajudam-nos a saber quais são as páginas mais e menos populares e a ver como os visitantes se movimentam pelo website. Todas as informações recolhidas por estes cookies são agregadas e, por conseguinte, anónimas. Se não permitir estes cookies, não saberemos quando visitou o nosso site.

Cookies de funcionalidade

Estes cookies permitem que o site forneça uma funcionalidade e personalização melhoradas. Podem ser estabelecidos por nós ou por fornecedores externos cujos serviços adicionámos às nossas páginas. Se não permitir estes cookies algumas destas funcionalidades, ou mesmo todas, podem não atuar corretamente.

Cookies de publicidade

Estes cookies podem ser estabelecidos através do nosso site pelos nossos parceiros de publicidade. Podem ser usados por essas empresas para construir um perfil sobre os seus interesses e mostrar-lhe anúncios relevantes em outros websites. Eles não armazenam diretamente informações pessoais, mas são baseados na identificação exclusiva do seu navegador e dispositivo de internet. Se não permitir estes cookies, terá menos publicidade direcionada.

Visite as nossas páginas de Políticas de privacidade e Termos e condições.

Importante: Este site faz uso de cookies que podem conter informações de rastreamento sobre os visitantes.