我目前正在将各种网址图片加载到imageview中。有些是svg类型,其余的是png。我希望在每个imageview中都有一个进度条,直到图像加载完毕。我可以使用Glide使用png图像来做到这一点,但是似乎找不到使用SvgLoader的方法。这是我的代码:
if(homeImageType.equals("svg")){
SvgLoader.pluck()
.with(mActivity)
.load(mData.get(i).getHomeTeamBadge(), myViewHolder.homeTeamBadge);
myViewHolder.progressHomeBadge.setVisibility(View.GONE);
}
else {
Glide
.with(mContext)
.load(mData.get(i).getHomeTeamBadge())
.listener(new RequestListener<String, GlideDrawable>() {
@Override
public boolean onException(Exception e, String model, Target<GlideDrawable> target, boolean isFirstResource) {
return false;
}
@Override
public boolean onResourceReady(GlideDrawable resource, String model, Target<GlideDrawable> target, boolean isFromMemoryCache, boolean isFirstResource) {
myViewHolder.progressHomeBadge.setVisibility(View.GONE);
return false;
}
})
.into(myViewHolder.homeTeamBadge);
}
png图像工作正常,进度条一直保持到图像加载到视图的位置。但是,在加载图像之前,svg进度条的可见性已发生明显变化,因为似乎没有可以添加到SvgLoader的侦听器。有任何想法吗?提前致谢。
答案 0 :(得分:0)
借助DBragion的答案,我找到了一种解决方法
Animated loading image in picasso
可以将可绘制的xml输入到Glide和SvgLoader的占位符中,并且效果很好。动画进度条很大,但是会占满占位符。我想知道是否有缩小它的方法?