Glide 加载图片失败重新加载的问题

2020-08-13 11:14:58 +08:00
 andev
RecycleView 里的列表图片用 Glide 加载,使用 new RequestOptions().error(R.drawable.bg)加载失败占位。
在 onBindViewHolder 里使用 Glide 加载图片失败,占位图显示。
这时,只要稍微滑动一下 RecycleView,显示区域内之前失败的图片又会重新请求网络加载(没有滑动到新的 Item,onBindViewHolder 没有调用)。
这是为什么? RecycleView 滑动怎么触发 Glide 加载之前失败的 URL 图片?
8575 次点击
所在节点    Android
2 条回复
Tenma
2020-08-13 11:21:27 +08:00
开启缓存?
andev
2020-08-13 16:18:58 +08:00
找到原因了,在 RecyleView 滑动监听里处理了 Glide:
if (newState == RecyclerView.SCROLL_STATE_IDLE) {
Glide.with(getContext()).resumeRequests();
}

导致在滑动停止时,Glide 调用 resumeRequests 重新请求了之前失败的 URL,Glide 有什么方法调用使得在请求失败后,
不将失败的请求保存之后再请求?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/697904

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX