2011-03-28 5 views
3

J'ai un tableau d'applications (PInfo) et je me demande comment ajouter ce tableau à une liste?comment ajouter un tableau à listview

ArrayList<PInfo> info = appsGetter.listPackages(); 
    int number = 0; 
    PInfo appInArray; 
    while(number < info.size()){ 
     appInArray = info.get(number); 
} 

C'est ce que j'ai en ce moment, les listPackages() est une méthode qui obtient les noms des applications de l'appareil. En ce moment j'essaye d'obtenir l'information hors du tableau un par un et l'ajoute à la liste comme ceci. Est-ce la façon dont je devrais le faire notre devrions-nous ajouter le tableau directement à la liste? Et comment faites-vous cela?

+0

Veuillez écrire une question plus claire avec quelques détails? Voir http://www.tinyurl.com/so-hints – gideon

Répondre

2

Vous pouvez utiliser un ArrayAdapter et l'initialiser comme ceci:

ArrayAdapter<PInfo> adapter = new ArrayAdapter(context, 
       android.R.layout.simple_list_item_multiple_choice, 
       info); 

Ensuite, vous pouvez-vous utiliser ListView.setAdapter(adapter).

Je ne sais pas si c'est ce que vous demandez. Alors s'il vous plaît clarifier plus loin si ce n'est pas ce que vous demandez

0

Vous devez utiliser un ArrayAdapter. Recherchez simplement un exemple ListView et ArrayAdapter en ligne. C'est assez simple une fois que vous le voyez terminé.

1

Essayez d'utiliser un adaptateur. Par exemple (en utilisant seulement la valeur de chaîne d'un objet), vous pouvez effectuer les opérations suivantes:

ListView listView = (ListView)findViewById(R.id.myListView); 
final ArrayList<String> listItems = new ArrayList<String>(); 
final ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, listItems); 
listView.setAdapter(adapter); 

Juste un exemple rapide, mais je l'espère vous donne un point de départ. Assurez-vous simplement d'ajouter des valeurs à votre source de données plus tard (dans ce cas ArrayList) pour appeler la méthode "notifyDataSetChanged()" de l'adaptateur afin qu'elle soit correctement reflétée dans tout ce qui a été lié à l'adaptateur (dans ce cas).

Questions connexes