2010-09-30 5 views
0

J'ai trouvé cet exemple Lazy load of images in ListView de Fedor qui est absolument génial pour ce dont j'ai besoin.Liste paresseuse avec des images et l'affichage de progrès

J'ai une question. Si, à côté du bouton Clear Cache, il y avait un TextView, comment pourrais-je y mettre combien d'images de toutes les images avaient été téléchargées? Si je sais que je vais télécharger un total de 20 images, le statut d'une image après l'autre sera téléchargé 1/20. 2/20 ... 20/20.

Répondre

1

Vous auriez besoin d'une variable qui contienne le nombre d'images téléchargées et chaque fois qu'une image est téléchargée, vous mettez à jour la variable, puis vous la définissez comme texte dans la vue de texte.

Vous voulez être à la recherche à ce code à l'intérieur ImageLoader.java

if(((String)photoToLoad.imageView.getTag()).equals(photoToLoad.url)){ 
          BitmapDisplayer bd=new BitmapDisplayer(bmp, photoToLoad.imageView); 
          Activity a=(Activity)photoToLoad.imageView.getContext(); 
          a.runOnUiThread(bd); 
         } 

qui est exécuté à chaque fois qu'une image est téléchargée. Là, vous pouvez mettre à jour la variable que vous avez ajoutée et appeler une méthode sur le thread ui pour mettre à jour l'affichage du texte.

+0

J'étudie actuellement le code. Je ne comprends pas tout, alors ce que vous avez expliqué semble très correct, mais pour le moment je ne sais pas comment l'implémenter. Je ne sais vraiment pas comment faire référence au TextView. Merci pour votre temps. – Alin

+0

J'ai suivi votre conseil. J'ai pris une référence pour le TextView de l'activité a, et l'envoie à BitmapDisplayer, avec la nouvelle variable. Là, je peux définir le texte avec tout ce que je veux. Merci pour votre suggestion. – Alin

Questions connexes