2010-08-16 14 views
2

Je crée un gestionnaire de téléchargement avec listview et il affiche le courant téléchargé par la barre de progression. Puis-je savoir comment puis-je mettre à jour la barre de progression?runOnUIT question

par exemple. J'ai 3 cours.

"main.class" = est un listview. "MAdapter.class" = étend ArrayAdapter.

"MThread.class" = implémente Runnable pour lancer le téléchargement.

J'ai google, et trouvé pour mettre à jour la liste, ou redessiner l'interface utilisateur devrait utiliser runOnUIThread. mais comment puis-je combiner ces 3 classes ensemble? J'ai essayé

mThread.start(){ 
    main.runOnUIThread(updated); 
} 
private updated = new Runnable(){ 
    mAdapter.progressbar.setProgress(downloaded); 
} 

cette 2 méthode j'ai été mis dans "mThread.class". mais ça ne marche pas. Puis-je savoir ce que j'étais mon erreur?

P/S: Je suis désolé pour mon code moche et mauvais anglais. J'espère que vous comprenez de quoi je parle. Merci

Répondre

1

Vous devez utiliser la tâche asynchrone. Voir the docs pour la description et des exemples.

+0

Salut Konstantin, merci pour la réponse. J'ai vu cette méthode avant. mais je ne sais pas vraiment comment l'utiliser. par exemple que 3 paramètres AsyncTask <"param1", "param2", "param3">. que devrais-je mettre sur "param1" et "param2"? un fil pour le téléchargement? "param3" est-ce que ça met le résultat que je reçois? et comment utiliser ces 4 étapes? Je suis désolé pour mon anglais et la question stupide. votre réponse est appréciée. – WynixToo

+1

Salut, voici un meilleur guide sur AsyncTask. Il contient un bon exemple de code avec des commentaires. http://www.screaming-penguin.com/node/7746 –

+0

Salut, désolé pour la réponse tardive. J'ai essayé mais mon aîné a dit pour le téléchargement ne devrait pas utiliser AsyncTask. il utilise use handle message et runOnUIThread. est-ce vrai? – WynixToo