Dans un précédent tuto Développer une listview personnalisée avec des fichiers xml,j’ai développé une listview personnalisée en appellant des fichiers xml. Je vais dans celui-ci intégré des images dans ma listview.
Premier fichier celui de ma listview que j’appelle liste1.xml
Mon fichier xml pour chaque item je crée un tableau pour mettre mon image et mon texte sur la même ligne.
/>
je crée ensuite une class listAvecImage qui est une extension de SimpleAdapter
public class listAvecImage extends SimpleAdapter{
//la ressource de l'image
private int Resourceid;
//identifiant de l'image dans le xml
private int[] Ressourceidxml;
//le constructeur
public listAvecImage (Context context,
ArrayList> data,
int resource,
String[] from,
int[] to,
int idxml,
int[] res2) {
super(context, data, resource, from, to);
Resourceid =res2;
Ressourceidxml= idxml;
}
public View getView(int position, View convertView, ViewGroup parent) {
View v = super.getView(position, convertView, parent);
//ressource image dans le xml
ImageView imageView = (ImageView)v.findViewById(Resourceid);
//affectation image
imageView.setImageResource(Ressourceidxml[position]);
return v;
}
}
Et dans la classe ou la listview s’affiche on rajoute le code suivant
setContentView(R.layout. liste1);
mPostList= (ListView) findViewById(android.R.id.list)
ArrayList> mylist = new ArrayList>();
HashMap map = new HashMap();
map.put("from", "essati");
mylist.add(map);
map = new HashMap();
SimpleAdapter mSchedule = new listAvecImage (this.getContext(), mylist, R.layout.viewitem2,
new String[] {"from"}, new int[] {R.id.text},R.id.img, new int[]{R.drawable.gmail,R.drawable.facebook,R.drawable.twitter,R.drawable.delicious});
mPostList.setAdapter(mSchedule);
Résultat
Il est temps de mettre à profit les tutoriels d’Android France:
Passez à la vitesse supérieure et investissez quelques dizaines d’euros pour acquérir les connaissances qui vous feront gagner de l’argent avec vos applications rendez-vous sur notre boutique Android-france pour ces formations en vidéo