/ / Faz o download de imagens de URL e as exibe em um GridView - android, gridview

Faz o download de imagens do URL e as exibe em um GridView - android, gridview

Eu tenho um URL onde existem algumas imagens. Quero recuperar todas as imagens desse URL e exibi-las no diretório GridView. Agora, quando clico em qualquer visualização do polegar, como na exibição em grade, ela deve ser ampliada ou carregada em tela cheia.

colocando os instantâneos para uma melhor compreensãoinsira a descrição da imagem aqui

Respostas:

5 para resposta № 1

Primeiro, descubra uma maneira de fazer o download de todas as imagens em um único link, o que acredito ser um pouco difícil.

Em seguida, coloque todos os locais do link em uma matriz de cadeias. Agora use o código abaixo para baixar as imagens.

    public Drawable LoadImage(String url) {

Drawable d;
try {
InputStream is = (InputStream) new URL(url).getContent();
d = Drawable.createFromStream(is, "src name");
return d;
} catch (NullPointerException e) {
d = getResources().getDrawable(R.drawable.icon);
return d;
} catch (Exception e) {
d = getResources().getDrawable(R.drawable.icon);
return d;
}
}

Obtenha o comprimento da matriz de strings na qual vocêarmazenaram os locais do link. E dentro de um loop for, tente executar o código acima. Isso retornará um objeto desenhável que você pode converter em recursos ou Bitmap e adicioná-lo ao GridView.


6 para resposta № 2

Você pode tentar o seguinte código. O carregamento lento da imagem é uma boa solução para carregar as imagens. Você pode tentar o carregamento lento no seguinte link: Carga preguiçosa de imagens no ListView . Nisso, eles usaram um ListView no layout para que as imagens e o texto correspondente sejam mostrados como itens da lista, você pode alterar esse ListView para um GridView, algo como isto:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<GridView
android:id="@+id/gridv"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:numColumns="auto_fit"
android:verticalSpacing="10dp"
android:horizontalSpacing="10dp"
android:columnWidth="90dp"
android:stretchMode="columnWidth"
android:gravity="center"/>
<Button
android:id="@+id/button1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Clear Cache"/>
</LinearLayout>

Eu acho que isso resolverá o problema.