我有一个图像列表页面,用户可以在其中添加更多图像到最新列表或删除任何图像。为了显示图像列表,我将Glide与recyclerview一起使用。这里的问题是,滑行有时无法加载图像,并引发错误“类com.bumptech.glide.load.engine.GlideException:无法加载资源”。但是,如果我再次关闭再打开,则会加载相同的图像。因此,URL没有问题。
DrawableTransitionOptions options = new DrawableTransitionOptions();
options.CrossFade();
Glide.With(_context)
.Load(_items[position].ToString())
.Apply(new Com.Bumptech.Glide.Request.RequestOptions()
.Error(Resource.Drawable.ic_exclaimation)
.FitCenter()
.InvokeDiskCacheStrategy(DiskCacheStrategy.All))
.Transition(options)
.Listener(new GlideImagelistener(vh))
.Into(vh.imageView);
internal class GlideImagelistener : Java.Lang.Object,IRequestListener
{
private DocumentViewHolder holder;
public GlideImagelistener(DocumentViewHolder holder)
{
this.holder = holder;
this.holder.progress.Visibility = ViewStates.Visible;
}
public bool OnLoadFailed(GlideException p0, Java.Lang.Object p1, ITarget p2, bool p3)
{
holder.progress.Visibility = ViewStates.Gone;
return false;
}
public bool OnResourceReady(Java.Lang.Object p0, Java.Lang.Object p1, ITarget p2, DataSource p3, bool p4)
{
holder.progress.Visibility = ViewStates.Gone;
return false;
}
}
其他人也有类似的问题,请告诉我。预先感谢。