3 回答

TA贡献1835条经验 获得超7个赞
如果你想使用 Glide 清空 imageview 试试这个:
imageString=""; Glide.with(itemView).load(imageString).into(mImage);
这对我有用。

TA贡献1795条经验 获得超7个赞
试试这个:
imageView.setImageBitmap(null);
此外,您还需要在存储图像时清除 Glide Cache。
这就是我解决这个问题的方法。
方法一:当图片改变时URL改变
Glide.with(DemoActivity.this)
.load(Uri.parse("file://" + imagePath))
.diskCacheStrategy(DiskCacheStrategy.NONE)
.skipMemoryCache(true)
.into(mImage);
diskCacheStrategy() 可用于处理磁盘缓存,您可以使用 skipMemoryCache() 方法跳过内存缓存。
方法2:当URL不变时,图像发生变化
如果您的 URL 保持不变,那么您需要使用 Signature 进行图像缓存。
Glide.with(yourFragment)
.load(yourFileDataModel)
.signature(new StringSignature(yourVersionMetadata))
.into(yourImageView);
Glide signature() 为您提供了将附加数据与缓存键混合的能力。
如果您从媒体商店获取内容,您可以使用 MediaStoreSignature。MediaStoreSignature 允许您将媒体存储项目的日期修改时间、mime 类型和方向混合到缓存键中。这三个属性可靠地捕获编辑和更新,允许您缓存媒体存储拇指。您也可以 StringSignature 以及保存为文件的内容来混合文件日期修改时间。
添加回答
举报