2015-04-21 17 views
20

So che Picasso carica l'immagine in imageview ecc. Ma come faccio a impostare l'immagine di sfondo del mio layout utilizzando picasso? Per favore qualsiasi aiuto sarà utile.Come faccio a impostare l'immagine di sfondo con picasso nel codice

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; 
    } 

quello che ho qui dà alcun errore dicendo che non può essere risolto. Ho uno ScrollView e relativi layout

+0

Pubblica il file di layout 'activity_main.xml'. Inoltre, anche l'errore di registro è utile. – Sebastiano

risposta

49

Utilizzo di callback di 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:

prega di controllare anche this .Come @OlivierH menzionato nel commento.

+0

Im ipotesi l'url sarà r.drawable.mypic? Inoltre questo codice è all'esterno di onCreate? Grazie per la rapida risposta e l'aiuto su questo. – user118742

+0

Spiacente, è un mio errore. Ho aggiornato il codice. – Soham

+0

Oh ok perfetto. Questo sembra buono. Fammi provare. Grazie – user118742