2010-11-17 2 views
10

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

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

ответ

13

зависит, где ваши изображения

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

, если вы хотите сделать лечение на них вы можете также открыть Bitmap и хранить эту

редактирования:

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

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

+0

Привет, Они находятся в вытяжке-MDPI folder.Not уверен, что вы имеете в виду, сохраняя ссылку Int в моем массиве, а затем загружается that.Really знал андроид. – James

+0

Я добавлю код, если вы хотите (giv eme a sec) –

+0

Это не вопрос – philippe

3

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

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

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

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

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

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

yourImageView.setImageDrawable(d); 
+0

Пойдите с альтернативным решением, которое описывает rreeverb. Вам не нужно «извлекать» доступную версию, вы можете просто установить идентификатор ресурса изображения в представлении! http://developer.android.com/reference/android/widget/ImageView.html#setImageResource(int) –

0

Вы можете использовать ресурсы из растяжимой-MDPI и хранить их в массив целых чисел, как

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

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

ImageView.setBackground=getResources().getDrawable(Icons[Position]); 
Смежные вопросы