2011-06-03 2 views
0

Je travaille sur une application Android et j'ai une question. J'ai une classe d'écoute qui s'exécute périodiquement sur le terrain et obtient des données de mon serveur. Je veux ajouter ces données dans une structure de données dans le thread principal. Dans ce cas, je ne touche pas le principal U.I. mais je me demandais si je devrais utiliser un gestionnaire pour ajouter les données dans la structure de données dans le fil principal. Ou puis-je simplement définir la structure de données comme statique et accéder à partir de la classe d'écoute pour insérer les données. De quelle façon devrais-je faire? Merci d'avance.Ai-je besoin d'un manutentionnaire?

Répondre

0

Une façon de faire cela (mais il y en a d'autres) est d'utiliser une vue de liste et un curseur (cela signifie que vous devez utiliser une base de données). Lorsque vous recevez des données du serveur (dans votre thread d'arrière-plan), vous les ajoutez à la base de données. Sur le thread d'interface utilisateur, vous enregistrez un ContentObserver pour être averti lorsque des données sont ajoutées. Lorsque vous êtes averti, il vous suffit de requery

Si vous ne souhaitez pas utiliser une base de données, vous pouvez envoyer une diffusion (voir BroadcastReceiver) dans laquelle vous pouvez ajouter des données.