【发布时间】:2016-04-02 00:14:03
【问题描述】:
我想在 Imageview 上加载图像时显示淡入淡出效果。我正在使用毕加索缓存图像并在图像视图中显示。我已经搜索了很多,但找不到任何解决方案。
我之前使用过,我知道在某些版本中他们有 .fade(int Duration) 方法可以在加载时淡化图像,但我再也找不到这个方法了。
这就是我现在正在做的事情
Picasso.with(context)
.load(viewHolder.data.imageList.get(0).url)
.networkPolicy(NetworkPolicy.OFFLINE)
.placeholder(R.drawable.a_place_holder_list_view)
.error(R.drawable.a_place_holder_list_view)
.into(viewHolder.ivUser, context.loadImage(viewHolder.ivUser, viewHolder.data.imageList.get(0).url));
public Callback loadImage(RoundedImageView ivUser, String url) {
return new callback(ivUser, url);
}
public class callback implements Callback {
RoundedImageView imageView;
String url;
public callback(RoundedImageView imageView, String url) {
this.imageView = imageView;
this.url = url;
}
@Override
public void onSuccess() {
}
@Override
public void onError() {
Picasso.with(BaseActivity.this)
.load(url)
.placeholder(R.drawable.a_place_holder_list_view)
.error(R.drawable.a_place_holder_list_view)
.into(imageView, new Callback() {
@Override
public void onSuccess() {
}
@Override
public void onError() {
Log.v("Picasso", "Could not fetch image");
}
});
}
}
请帮助我,我已经被困了很长时间了。 提前致谢。
【问题讨论】:
-
github.com/square/picasso/issues/743 ,请参阅底部的 JakeWharton 回答。使用回调。
标签: android fade picasso image-loading