TsCyrille Posted September 1, 2010 Share Posted September 1, 2010 Bonjour. Je remplis la liste d'un Spinner de la façon suivante : ... Boucle de remplissage de l'ArrayList libelle défini comme propriété de ma classe ... ArrayAdapter adapter = new ArrayAdapter(this,android.R.layout.simple_spinner_item,libelle); adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); spinner.setAdapter(adapter); Jusqu'à là pas de problème... mais je désire, à un moment donné, vider la liste du Spinner. Pour l'instant je fais ceci : libelleclear(); ArrayAdapter adapter = new ArrayAdapter(this,android.R.layout.simple_spinner_item,libelle); adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); spinner.setAdapter(adapter); N'y-a-t-il pas un moyen plus simple (par exemple sans réinstancier un ArrayAdapter) ? Merci d'avance Link to comment Share on other sites More sharing options...
Fluckysan Posted September 1, 2010 Share Posted September 1, 2010 Tu peux juste vider ton adapter : adapter.clear(); Puis tu peux dire à Android que ton Spinner doit être redessiné, s'il ne le fait pas déjà (tout dépend où tu vide ton adapter) : spinner.invalidate(); Link to comment Share on other sites More sharing options...
TsCyrille Posted September 2, 2010 Author Share Posted September 2, 2010 Merci pour ton aide : cela marche bien (pas besoin de rajouter la ligne concernant la fct "invalidate") Link to comment Share on other sites More sharing options...
Fluckysan Posted September 2, 2010 Share Posted September 2, 2010 Np :) Le invalidate() va être nécessaire si tu vide ta liste dans un thread par exemple, pour notifier Android qu'il faut qu'il redessine le Spinner dès qu'il peut Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.