2017-03-02 2 views
1

Supposons que j'ai une liste d'éléments comme String [] list = {"item1", "item2", "item3", ...., "itemN"}; J'ai des images correspondantes de chaque article ayant des formats différents (certains en jpg, d'autres en png etc.) et des noms différents en série (en tant qu'indices de liste array) dans un dossier drawable. Je dois faire un peu de traitement sur le tableau de liste & chaque fois qu'il renvoie certains & différents indices de liste. Donc, je dois montrer les images correspondantes de ces éléments indiqués par les indices retournés non comme vue de la liste dans le studio android. Comment puis-je faire ceci. Par exemple, Si après avoir traité j'ai des indices non: {3,7,1}, je dois montrer le non correspondant des images pour item3, item7 et item1 stockés dans le dossier drawable comme listView.Au-delà, les valeurs des indices indiqués peuvent changer selon traitement sur elle. Quelqu'un peut-il aider pls ???Comment accéder aux images du dossier drawable dans le studio android selon mon choix?

Edit:

En fait, je veux que here in the picture la séquence d'affichage des images et des textes ne seront pas selon la « position », plutôt sera selon mon choix comme en première position de la ligne de listview j'aurai l'image de item3, dans la position 2 -> image de l'élément 7, dans la position 3 -> image de l'élément 1.

Répondre

0

Dans votre liste de classe de traitement Array, définir un tableau Int contenant des références aux images:

int imageRes[] = {R.drawable.image1, R.drawable.image2,...}; 

considérant maintenant que seuls trois indices sont renvoyés après traitement: ex: indices [] = {1,5,6}; int imageArray [] - (la taille peut être trois)

for(int i =0; i<3;i++){ 
imageArray[i] = imageRes[indices[i]]; 
} 

Votre ListView peut contenir un point de vue de l'image. Créez un adaptateur personnalisé pour la vue de liste et transmettez imageArray en tant que paramètre.

Ensuite, vous pouvez définir l'image pour quelque chose comme ImageView ceci:

imageView.setImageResource[imageArray[i]] 
+0

ouais! Je pensais de cette façon, j'espère que ça marchera. Je vais essayer :) – suptagni

+0

cool! fais le moi savoir. –

0

Stockez la valeur R de l'image dans un tableau d'entiers et vous pouvez poster selon les indices de ce tableau

int _rImage[] ={R.drawable.img1,R.drawable.img2}