/ / Descarga imágenes de la URL y las muestra en un GridView - android, gridview

Descarga imágenes de la URL y las muestra en un GridView - android, gridview

Tengo una URL donde existen algunas imágenes. Quiero recuperar todas las imágenes de esa URL y mostrar estas imágenes en el GridView. Ahora, cuando hago clic en cualquiera de las vistas previas del pulgar, como en la vista de cuadrícula, debería ampliarse o cargarse a pantalla completa.

Poniendo las instantáneas para una mejor comprensión.enter image description here

Respuestas

5 para la respuesta № 1

Primero, descubra una manera de cómo va a descargar todas las imágenes desde un solo enlace, lo que creo que es algo difícil.

A continuación, coloque todas las ubicaciones de enlace en una matriz de cadena. Ahora usa el siguiente código para descargar las imágenes.

    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;
}
}

Obtén la longitud de la matriz de cadenas en la quehan almacenado las ubicaciones de enlace. Y dentro de un bucle for intenta ejecutar el código anterior. Esto devolverá un objeto dibujable que puede convertir en recursos o Mapa de bits y agregarlo a GridView.


6 para la respuesta № 2

Puedes probar el siguiente código. La carga perezosa de la imagen es una buena solución para cargar las imágenes, puede probar la carga perezosa desde el siguiente enlace: Carga perezosa de imágenes en ListView . En esto, han utilizado un ListView en el diseño para que las imágenes y el texto correspondiente se muestren como elementos de lista, puede cambiar ese ListView a un GridView algo como esto:

<?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>

Creo que esto va a resolver el problema.