Vérifiez ce constructeur pour SimpleAdapter:
http://bit.ly/99OFSo
Essentiellement, vous créez une mise en page personnalisée pour représenter chaque ligne. Attribuez des ID aux éléments ImageView et TextView dans cette présentation. Vous créez un objet List<? extends Map<String, ?>>
pour représenter vos données. Chaque élément de la liste est un Map<String, [some object]>
qui représente une clé et une valeur pour chaque élément de données que vous souhaitez afficher. Le troisième argument du constructeur est l'identifiant de la disposition des lignes. Le quatrième argument est un tableau de chaînes représentant les clés de chaque donnée de la carte que vous avez créée précédemment, et le cinquième argument est un tableau d'identifiants int des éléments ImageView et TextView dans votre mise en page (dans l'ordre correspondant au tableau de chaînes dans l'argument précédent).
J'ai quelque chose comme ce qui suit:
ListView someListView= (ListView)findViewById(R.id.someListView);
SimpleAdapter adapter = new SimpleAdapter(
this,
someHelperMethodThatReturnsMyList(),
R.layout.custom_row,
new String[] { "field1", "field2", "field3" },
new int[] { R.id.txtField1, R.id.txtField2, R.id.imgField3}
);
someListView.setAdapter(adapter);
http://tech-papers.org/android_custom_listview/ –