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ão
Respostas:
5 para resposta № 1Primeiro, 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.