Массив изображений в android

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

Как это сделать. Создайте массив с именами изображений без кавычек или что?

Ответ 1

зависит от ваших изображений

но если есть в R.drawables. то почему бы просто не сохранить ссылку на int в вашем массиве, а затем загрузить этот

если вы хотите сделать лечение на них, вы также можете открыть растровое изображение и сохранить его

изменить:

  private int[] textureArrayWin = {
R.drawable.star_00,
R.drawable.star_01,
R.drawable.star_02,
};

и теперь у вас есть таблица идентификатора нужных изображений

Ответ 2

Да, вы можете создать массив чертежей.

В качестве альтернативы вы также можете создать массив из int, которые сопоставляются с вашими идентификаторами ресурсов. Поэтому оставьте свои изображения в папке с возможностью рисования, которая дает им идентификаторы ресурсов.

R.drawable.yourimage1
R.drawable.yourimage2
...
R.drawable.yourimagen

Затем, когда вы хотите загрузить изображение и нарисовать его, вы сделаете что-то подобное в своей деятельности. Предполагая, что "yourarray" - это массив:

Drawable d = getResources().getDrawable(yourarray[n]);

Тогда я считаю, что вызов установлен в ImageImageDrawable на ImageView. Итак:

yourImageView.setImageDrawable(d);

Ответ 3

Вы можете использовать ресурсы из drawable-mdpi и хранить их в массиве целых чисел, например

private static final Integer[] Icons = {
    R.drawable.bg_android_icon,
    R.drawable.bg_sunrise_icon,
    R.drawable.bg_sunset_icon,
    ......
};

И затем вы можете использовать его в цикле с шагом от 0 до Icons.length и установить его в ImageView

ImageView.setBackground=getResources().getDrawable(Icons[Position]);