Set background resource using Picasso

11,893

Solution 1

The Javadoc for Picasso's RequestCreator class has the following example:

public class ProfileView extends FrameLayout implements Target {
    @Override 
    public void onBitmapLoaded(Bitmap bitmap, LoadedFrom from) {
        setBackgroundDrawable(new BitmapDrawable(bitmap));
    }

    @Override public void onBitmapFailed() {
        setBackgroundResource(R.drawable.profile_error);
    }
}

Solution 2

I just had a work around with the Picasso library, I was attempting to set the image as a background as well. Picasso library made it very easy to do this, there is method by name "FIT()" which will do this job for you.

The one magic line from Picasso is

 Picasso.with(context).load(mImageURLS.get(position))
                .fit().placeholder(R.drawable.rtrt).into(mImageDownloader);

.fit() does the trick, thanks.

Share:
11,893

Related videos on Youtube

nullUser
Author by

nullUser

Updated on June 04, 2022

Comments

  • nullUser
    nullUser about 2 years

    I know Picasso is an awesome library to play with images.

    Picasso.with(context).load("http://i.imgur.com/DvpvklR.png").into(imageView);
    

    with this code i can load an image to an image view.

    But is it possible to set a background resource , using Picasso ?

  • Calvin
    Calvin almost 10 years
    Use setBackground(new BitmapDrawable(context.getResources(), bitmap)) as the code shown in the example is deprecated.
  • Sufian
    Sufian almost 9 years
    Does what the OP asked for. This should be marked as the answer. @SyamS
  • Vedant Agarwala
    Vedant Agarwala over 8 years
    does this even work? fit() just re-sizes the image. Doesn't change how it is applied to the target
  • WallyHale
    WallyHale over 8 years
    It's not '.fit()' that is doing the "replacement", it's the '.placeholder(Drawable)' that is doing it. Once the image is loaded, it replaces the resource you define as the placeholder.
  • Atul
    Atul almost 8 years
    This is definitely not correct answer. placeholder and fit are not for changing background color.
  • Admin
    Admin over 4 years
    This answer is deprecated now as BitmapDrawable is deprecated