J'ai eu la même expérience. La cause était que l'adaptateur de liste était en train de se mettre à jour sur le mauvais thread, c'est-à-dire pas sur le thread de l'interface utilisateur. Ceci est facilement résolu en changeant les données de l'adaptateur sur le thread d'interface utilisateur à travers (comme je l'ai trouvé sur d'autres postes):
runOnUiThread(new Runnable() {
public void run() {
// code that changes the list adapter data
}
});
Bien sûr, vous pouvez toujours créer une classe (intérieure) qui implémente Runnable qui est fourni avec la liste adaptateur et données à ajouter, insérer, etc.
Remarque: l'appel de notifyDataSetInvalidated() ou notifyDataSetChanged() ne sera pas nécessaire car il est appelé par défaut, sauf si vous l'avez désactivé explicitement avec setNotifyOnChange (false);
S'il vous plaît fournir plus de code source pour le même. – Reno