Il faut utiliser une autre méthode pour avoir plus de contrôle, à la place de:
1 2
| SimpleAdapter miseEnFormeItems = new SimpleAdapter (getBaseContext(), listItem, R.layout.affichageitem,
new String[] {"img", "titre", "description"}, new int[] {R.id.img, R.id.titre, R.id.description}); |
utilise plutôt:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
class CustomAdapter extends ArrayAdapter {
CustomAdapter() {
super(ListEvent.this, R.layout.affichageitem, TaListDeValeurADisplay);
}
public View getView(final int position, View convertView,ViewGroup parent) {
View row=convertView;
if (row==null) {
LayoutInflater inflater=getLayoutInflater();
row=inflater.inflate(R.layout.affichageitem, parent, false);
}
//initialise les view
Typeface tf=Typeface.createFromAsset(getAssets(), "fonts/lafonte.ttf");
TextView titre=(TextView)row.findViewById(R.id.titre);
titre.setTypeface(tf);
return(row);
} // getview
} |
et pour lancer ça:
setListAdapter(new CustomAdapter());
On peut optimiser tout ça avec un ViewHolder mais je veut pas compliquer la chose pour le moment.
Partager