Android: Picasso Load Image Failed . How To Show Error Message


Answer :

Use builder:

    Picasso.Builder builder = new Picasso.Builder(this);     builder.listener(new Picasso.Listener()     {         @Override         public void onImageLoadFailed(Picasso picasso, Uri uri, Exception exception)         {             exception.printStackTrace();         }     });     builder.build().load(URL).into(imageView); 

Edit

For version 2.71828 they have added the exception to the onError callback:

        Picasso.get()             .load("yoururlhere")             .into(imageView, new Callback() {                 @Override                 public void onSuccess() {                 }                  @Override                 public void onError(Exception e) {                 }             }) 

When you use callback, the picaso will call method onSuccess and onError!

File fileImage = new File(mPathImage);         Picasso.with(mContext).load(fileImage)                 .placeholder(R.drawable.draw_detailed_view_display)                 .error(R.drawable.draw_detailed_view_display)                 .resize(200, 200)                 .into(holder.mImageEvidence, new Callback() {                     @Override                     public void onSuccess() {                         holder.mMediaEvidencePb.setVisibility(View.GONE);                     }                      @Override                     public void onError() {                         holder.mErrorImage.setVisibility(View.VISIBLE);                     }                 }); 

In case you want to use Picasso with Kotlin and lambda expression it could be as short as this:

val picasso = Picasso.Builder(context)             .listener { _, _, e -> e.printStackTrace() }             .build() 

...and then you can load image as usual:

picasso.load(url).into(imageView) 

Comments

Popular posts from this blog

Are Regular VACUUM ANALYZE Still Recommended Under 9.1?

Can Feynman Diagrams Be Used To Represent Any Perturbation Theory?