How do I set background image with picasso in code

28,009

Use callback of Picasso

    Picasso.with(getActivity()).load(R.drawable.table_background).into(new Target(){

  @Override
  public void onBitmapLoaded(Bitmap bitmap, LoadedFrom from) {
     mainLayout.setBackground(new BitmapDrawable(context.getResources(), bitmap));
  }

  @Override
  public void onBitmapFailed(final Drawable errorDrawable) {
      Log.d("TAG", "FAILED");
  }

  @Override
  public void onPrepareLoad(final Drawable placeHolderDrawable) {
      Log.d("TAG", "Prepare Load");
  }      
})

UPDATE:

Please check this also .As @OlivierH mentioned in the comment.

Share:
28,009
Toye
Author by

Toye

Updated on January 02, 2020

Comments

  • Toye
    Toye over 4 years

    I know picasso loads image into imageview etc but how do I set my layout background image using picasso?

    My code:

    public class MainActivity extends ActionBarActivity {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            RelativeLayout relativeLayout = (RelativeLayout) findViewById(R.id.relativelayout);
            relativeLayout.setBackgroundResource(R.drawable.table_background);
            Picasso.with(MainActivity.this)
                    .load(R.drawable.table_background)
                    .resize(200, 200)
                    .into(relativeLayout);
            return relativeLayout;
        }
    

    What I have here gives any error saying it cannot be resolved. I have a ScrollView and relative layouts.