Загружает изображения из URL и отображает их в GridView - PullRequest
2 голосов
/ 13 июня 2011

У меня есть URL, где существуют некоторые изображения.Я хочу получить все изображения с этого URL и отобразить эти изображения в GridView.Теперь, когда я нажимаю на любой из предпросмотра большого пальца, как в виде сетки, он должен увеличиваться или загружаться в полноэкранный режим.

Ответы [ 2 ]

6 голосов
/ 13 июня 2011

Вы можете попробовать следующий код. Ленивая загрузка изображения - это хорошее решение для загрузки изображений, вы можете попробовать ленивую загрузку по следующей ссылке: Ленивая загрузка изображений в ListView . При этом они использовали ListView в макете, поэтому изображения и соответствующий текст отображаются в виде элементов списка, вы можете изменить этот ListView на GridView примерно так:

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

Я думаю, что это решит проблему.

5 голосов
/ 13 июня 2011

Сначала выясните, как вы собираетесь загружать все изображения по одной ссылке, что я считаю несколько сложным.

Затем поместите все ссылки в массив строк.Теперь используйте приведенный ниже код для загрузки изображений.

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

Получите длину массива строк, в котором вы сохранили расположение ссылок.А внутри цикла for попробуйте выполнить приведенный выше код.Это вернет рисуемый объект, который вы можете преобразовать в ресурсы или растровое изображение и добавить его в GridView.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...