[英]Picasso and ImageLoader android
對不起我的英語不好。 首先,我使用了Picasso
庫,它是一個很好的庫,有很多可能性,但是它沒有存儲在緩存中。 然后,我了解了ImageLoader
優秀的庫,該庫可以將圖像存儲在緩存中。 但是我首先在示例Picasso
上進行了應用。 例如,在這里我確實在Picasso
模糊了圖像:
//code
Picasso.with(context).load(profileList.get(0).getImage())
.resize(100, 100)
.centerInside()
.into(target);
//code
private Target target = new Target() {
@Override
public void onBitmapLoaded(Bitmap bitmap, Picasso.LoadedFrom from) {
Bitmap b;
b = fastblur(bitmap, 3); // fastblur method blur image
int color = Color.parseColor("#8C2d569c")
foneImage.setColorFilter(color); //set filter
foneImage.setImageBitmap(b); //and set image
}
@Override
public void onBitmapFailed(Drawable arg0) {
// TODO Auto-generated method stub
}
@Override
public void onPrepareLoad(Drawable arg0) {
// TODO Auto-generated method stub
}
};
但是現在我不知道如何將此代碼移動到ImageLoader
。 以下是我使用ImageLoader
並在ImageView
加載圖像的方式
mImageLoader.displayImage(profileList.get(0).getImage(), imageProfile, null, new ImageLoadingListener() {
@Override
public void onLoadingStarted(String arg0, View arg1) {
Log.e("Script", "OnLoadeing");
}
@Override
public void onLoadingFailed(String arg0, View arg1, FailReason arg2) {
Log.e("Script", "OnLoadeingComplete");
}
@Override
public void onLoadingComplete(String arg0, View arg1, Bitmap arg2) {
Log.e("Script", "OnLoadeingFailed");
}
@Override
public void onLoadingCancelled(String arg0, View arg1) {
Log.e("Script", "OnLoadeingStarted");
}
}, new ImageLoadingProgressListener() {
@Override
public void onProgressUpdate(String uri, View view, int current, int total) {
Log.e("Script", "OnProgressUpdate" + uri + " " + total);
}
})
;
如何添加方法fastblur (bitmap, 3);
在mImageLoader
?
UPD:
它回答我的問題
mImageLoader.displayImage(profileList.get(0).getImage(), foneImage, null, new ImageLoadingListener() {
@Override
public void onLoadingStarted(String arg0, View arg1) {
Log.e("Script", "OnLoadeing");
}
@Override
public void onLoadingFailed(String arg0, View arg1, FailReason arg2) {
Log.e("Script", "OnLoadeingComplete");
}
@Override
public void onLoadingComplete(String arg0, View arg1, Bitmap arg2) {
Bitmap b;
b = fastblur(arg2, 5);
int color = Color.parseColor("#8C2d569c"); //The color u want
foneImage.setColorFilter(color);
foneImage.setImageBitmap(b);
}
@Override
public void onLoadingCancelled(String arg0, View arg1) {
Log.e("Script", "OnLoadeingStarted");
}
}, new ImageLoadingProgressListener() {
@Override
public void onProgressUpdate(String uri, View view, int current, int total) {
Log.e("Script", "OnProgressUpdate" + uri + " " + total);
}
});
如果這不是最終類,則應該繼承mImageLoader的原型,然后在該新類中添加您的方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.