2010-01-07 5 views
1

J'utilise un ListView pour afficher des éléments. Actuellement, je lui passe un tableau d'éléments String. Mais je veux passer un tableau de plus et afficher ses éléments avec les éléments du premier tableau; c'est, en quelque sorte, avoir deux lignes de texte.Comment passer plus d'un tableau à une liste?

Comment puis-je faire cela?

Répondre

3

Vous pouvez également créer un adaptateur personnalisé pour votre liste et utiliser une classe personnalisée comme type d'éléments de cet adaptateur. Quelque chose comme ceci:


class CustomAdapter extends ArrayAdapter <RowData> { 
    ... 
     @Override 
     public View getView(int position, View convertView, ViewGroup parent) { 
     ... 
     } 
} 

class RowData { 
    String line1; 
    String line2 
    RowData(String l1, String l2){line1=l1;line2=l2;} 
} 

Regards!

0

Utilisez une table ou mettez en forme les éléments des différents tableaux dans un nouveau tableau.

1

Étant donné que les deux tableaux contiennent des données à afficher dans une rangée d'une liste, IMO il est logique et juste de croire qu'ils sont liés d'une certaine manière.
Vous pouvez créer une classe appelée RowData et avoir comme membres une chaîne (type de données du premier tableau) et un objet (ou type de données du second tableau). Vous pouvez ensuite passer un tableau de type Rowdata à la vue de liste.
Par exemple, si vous voulez passer: String [] et [date] au listView vous passerez rowData [] maintenant, où rowData est défini comme:

class RowData{ 
String dataItem1; 
Date dataItem2; 
} 
Questions connexes