comment utiliser la barre de progression lors du chargement de l'image dans picasso?
Je veux onStart()
méthode de chargement de l'image à partir du serveur à l'aide de picasso et je veux afficher une barre de progression jusqu'à ce que les photos sont entièrement téléchargé
Voici mon code:
@Override
protected void onStart() {
//TODO Auto-generated method stub
super.onStart();
Picasso.with(context).load(imageLoad)
.placeholder(R.id.progressBarDetails)
.error(R.drawable.friend_request).noFade().resize(200, 200)
.into(avatarImage, new Callback() {
@Override
public void onError() {
//TODO Auto-generated method stub
}
@Override
public void onSuccess() {
//TODO Auto-generated method stub
progressbar.setVisibility(View.GONE);
}
});
Picasso.with(this).load(imageLoad).into(target);
}
OnFinished a = new OnFinished() {
@Override
public void onSendFinished(IntentSender IntentSender, Intent intent,
int resultCode, String resultData, Bundle resultExtras) {
//TODO Auto-generated method stub
intent = new Intent(getApplicationContext(), Map.class);
}
};
private Target target = new Target() {
@Override
public void onBitmapLoaded(final Bitmap bitmap, Picasso.LoadedFrom from) {
new Thread(new Runnable() {
@Override
public void run() {
File file = new File(Environment
.getExternalStorageDirectory().getPath()
+ "/actress_wallpaper.jpg");
try {
file.createNewFile();
FileOutputStream ostream = new FileOutputStream(file);
bitmap.compress(CompressFormat.JPEG, 75, ostream);
ostream.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}).start();
}
source d'informationauteur androidAhmed
Vous devez vous connecter pour publier un commentaire.
Je n'ai pas testé ton code, mais même si cela fonctionne, le fichier
actress_wallpaper.jpg
n'est pas chargé dans l'ImageView. Dans la doc, il est ditEssayez ceci:
être averti que je ne l'ai pas testé mon code.
Mise à jour:
J'ai essayé la version 2.3.2 et 2.3.3, il semble qu'il y a un problème https://github.com/square/picasso/issues/539
C'est une vieille question, mais peut-être cette réponse peut aider les autres que j'ai aussi eu des problèmes en montrant la barre de progression lors du chargement de l'image à partir du serveur.
Je suis à l'aide de Picasso 2.4.0. et je suis en utilisant Picasso Cible interface de chargement de l'image dans l'imageview. Voici la testé et de travail code:
D'abord ajouter les lignes suivantes:
Ici est la mise en œuvre de la Cible de l'interface utilisée ci-dessus
Le code ci-dessus fonctionne très bien si elle est utilisée pour le chargement de l'image dans l'activité. Mais si vous voulez charger une image dans gridview/recyclerview ou de la vue pager etc. où même point de vue, un support est utilisé, vous pourriez obtenir un problème où onBitmapLoaded() n'est pas appelée (comme la vue est recyclé et Picasso ne conserve qu'une faible référence à l'objet Cible). Voici un lien pour résoudre ce problème.