2014-01-11 74 views
7

我知道畢加索是一個很棒的圖書館。使用畢加索設置背景資源

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

使用此代碼我可以將圖像加載到圖像視圖。

但是可以使用畢加索設置背景資源嗎?

回答

12

Javadoc爲畢加索的RequestCreator類有下面的例子:

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); 
    } 
} 
+4

使用setBackground(new BitmapDrawable(context.getResources(),bitmap)),因爲示例中顯示的代碼已被棄用。 – Calvin

+0

是否要求OP。這應該被標記爲答案。 @SyamS – Sufian

1

我剛剛和畢加索庫周圍的工作,我試圖把圖像作爲背景爲好。 畢加索圖書館很容易做到這一點,有名稱爲「FIT()」的方法將爲您完成這項工作。

從畢加索的一個魔線是

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

.fit()是卓有成效的,謝謝。

+2

這做甚至工作? 'fit()'只是重新調整圖像的大小。不改變它如何應用於目標 – vedant1811

+0

這不是'.fit()'正在做「替換」,它是'.placeholder(Drawable)'正在做它。加載圖像後,它將替換您定義爲佔位符的資源。 – WallyHale

+0

這絕對是**不正確的答案**。 'placeholder'和'fit'不用於改變背景顏色。 – Atul