2010-05-10 6 views

Répondre

0

Vous voulez utiliser une autre icône dans chaque ligne correcte? Eh bien, vous pouvez utiliser un tableau entier d'ID de ressource de toutes vos images et les mettre dans l'ordre pour vos éléments de ligne. La façon habituelle des gens de faire ceci est de coder dur la liste et de spécifier le nomRefiable.iconName qui est dans vos ressources. comme:

int[] mapPic = { 
     R.drawable.icon1,R.drawable.icon2, 
     R.drawable.icon3,R.drawable.icon4}; 

Pour moi c'est une solution brute, le codage dur est un gros non-non. Une manière plus élégante consiste à placer le tableau dans votre fichier xml comme string.xml ou celui que vous créez pour tous vos tableaux. Dans votre string.xml mis en:

<array name="arrayIcon"> 
    <item>@drawable/icon1</item> 
    <item>@drawable/icon2</item> 
    <item>@drawable/icon3</item> 
    <item>@drawable/icon4</item> 
</array> 

Puis dans votre code lorsque vous créez votre point de vue avant que le contenu de réglage, ajouter:

TypedArray mapPic = getResources().obtainTypedArray(R.array.arrayIcon); 

Vous pouvez l'accéder à l'objet qui est en fait la drawable par:

Drawable drawable = typeArray.getDrawable(RowID); 

dans mon code pour le mettre à mon avis que je devais saisir l'ViewWrapper et utiliser getIcon() pour le définir.

ViewWrapper wrapper.getIcon().setImageDrawable(drawable); 

Et voilà comment vous ajoutez vos ressources d'image que vous voulez à votre liste en utilisant un tableau dans les ressources XML. J'espère que cela t'aides.