2010-11-17 8 views
10

Estoy tratando de usar una matriz de imágenes y luego establezco mi ImageView en una de las imágenes de la matriz. Mi primer instinto fue utilizar una matriz de cadenas con los nombres de las imágenes, pero esto no funcionó.Arreglo de imagen en android

¿Cómo hago esto? Haga una matriz dibujable con los nombres de las imágenes sin comillas o qué?

Respuesta

13

depende donde sus imágenes son

pero si hay una en R.drawables. entonces ¿por qué no simplemente almacenar la referencia int en su conjunto y luego carga que

si usted quiere hacer el tratamiento en ellos también se puede abrir el mapa de bits y almacenar esa

edición:

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

y ahora tiene una tabla de la identificación de las imágenes que desea

+0

Hola, Ellos están en el dibujable-mdpi folder.Not seguro de lo que quiere decir con el almacenamiento de la referencia int en mi matriz y luego cargar that.Really sabía a android. – James

+0

Añadiré un código si lo desea (gémeme un segundo) –

+0

Esa no era la pregunta – philippe

3

Sí, podría crear una matriz de elementos dibujables.

Como alternativa, también puede crear una matriz de entradas que se correlacionen con sus identificadores de recursos. Así que deje caer sus imágenes en la carpeta dibujable que les da identificadores de recursos.

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

Luego, cuando desee cargar una imagen y dibujar en su vista de imagen, haga algo como esto desde su Actividad. Asumiendo "yourarray" es la matriz:

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

entonces creo que la llamada es setImageDrawable en ImageView. Por lo tanto:

yourImageView.setImageDrawable(d); 
+0

Vaya con la solución alternativa que describe el rreeverb. ¡No tiene que 'obtener' el dibujable, simplemente puede establecer la identificación del recurso de imagen en la vista! http://developer.android.com/reference/android/widget/ImageView.html#setImageResource(int) –

0

Usted puede utilizar los recursos de dibujable-MDPI y almacenarlos en una matriz de enteros como

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

y luego se puede utilizar en un bucle con Postion que va de 0 a iconos .length y la puso a ImageView

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