我在我的项目中使用Picasso库来加载图像。与毕加索一起工作时,我想在显示原始图像之前显示模糊图像。我尝试使用名为" wasabeef transformation"的第三方库来做到这一点。在stackoverflow上建议,但在显示原始图像之前无法显示模糊图像。这就是我做到的。
Picasso.with(context).load(message.body)
.transform(BlurTransformation(context))
.into(photo,object:Callback{
override fun onSuccess() {
Picasso.with(context).load(message.body)
.networkPolicy(NetworkPolicy.OFFLINE)
.into(photo)
}
override fun onError() {
}
})
编辑:
我在这里没有得到任何模糊图像。它只是在几秒后显示原始图像。我也在我的活动中使用Recyclerview并在我的Recyclerview适配器中加载图像。一旦获得下载的图像URL,就会加载图像。如何在Picasso或任何其他加载图像库中显示或不显示任何库的模糊图像。请告诉我。
答案 0 :(得分:0)
创建要在其中加载图像并将其模糊的ImageView。在您的活动中写下以下代码。
Target target = new Target() {
@Override
public void onBitmapLoaded(Bitmap bitmap, Picasso.LoadedFrom from) {
imageViewBackground.setImageBitmap(BlurImage.fastblur(bitmap, 1f,
BLUR_PRECENTAGE));
}
@Override
public void onBitmapFailed(Drawable errorDrawable) {
imageViewBackground.setImageResource(R.mipmap.ic_launcher);
}
@Override
public void onPrepareLoad(Drawable placeHolderDrawable) {
}
};