Получить динамический список изображений - PullRequest
0 голосов
/ 27 мая 2011

Я следую учебному пособию по Android Hello-GridView и хотел бы использовать динамический список изображений из папки res / drawable, а не из жестко заданного массива, как было предложено:

// references to our images
private Integer[] mThumbIds = {
        R.drawable.sample_2, R.drawable.sample_3,
        R.drawable.sample_4, R.drawable.sample_5,
        R.drawable.sample_6, R.drawable.sample_7,
        R.drawable.sample_0, R.drawable.sample_1
};

Как я могу зациклить и загрузить эти изображения динамически?

Ответы [ 2 ]

1 голос
/ 27 мая 2011

Попробуйте использовать для этого папку assets вместо определения их в качестве ресурсов.Просто скопируйте изображения в папку под res / assets (для этого примера res / assets / images).Следующий код должен получить список файлов в этой папке:

AssetManager assets = getAssets();
String[] drawables = assets.list("images");

Затем просто установите drawable с кодом @Jack Smartie, размещенным выше:

imageView.setBackgroundDrawable(Drawable.createFromPath(drawables[i]))

Гдеi - это индекс нужного вам элемента.

0 голосов
/ 27 мая 2011

Обновление: Ой, я не прочитал ваш вопрос так тщательно, как следовало бы.Я не уверен, как вы будете динамически загружать ресурсы в вашей папке для рисования, кроме жесткого кодирования, в массив.

Здравствуйте,

Я сделал нечто подобное в своем приложении.

Посмотрите на getView метод вашего ImageAdapter класса.В части if (view == null) вашего кода, перед else, используйте один из сеттеров ImageView (например, setImageBitmap, setImageDrawable, setBackground и т. Д.).

Я забыл упомянуть, что вам нужночтобы создать массив строк, который содержит путь к файлу ваших изображений.

В моем коде это строка, которую я имею:

imageView.setBackgroundDrawable(Drawable.createFromPath(MainActivity.imageStringArray[position]));

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