作者热门文章
- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我不想将图像存储在缓存中..我使用 CachedNetworkImage 进行图像加载..我想知道是否有任何选项可以像毕加索一样删除或不将图像存储在缓存中..
我的代码:
var annotatedImg = CachedNetworkImage(
fit: BoxFit.fill,
imageUrl: Constants.IMAGE_BASE_URL + widget._fileId + Constants.CONTOUR_IMG_SUFFIX,
placeholder: (context, url) => progressBar,
errorWidget: (context, url, error) => new Icon(Icons.error),
);
我试过了
annotatedImg.cacheManager.emptyCache();
但它的显示不能调用 emptyCache 是 null..
最佳答案
自 CachedNetworkImage version 2.3 以来,所有这些解决方案都不起作用,因为它在 2 个不同的地方缓存图像(DefaultCacheManager 和 NetworkImageProvider)
所以唯一的解决方案是使用 CachedNetworkImage
中的 evictFromCache
内置方法
像这样:
Future _deleteImageFromCache() async {
String url = "your url";
await CachedNetworkImage.evictFromCache(url);
}
evictFromCache
是一个静态方法,因此它不需要在您的 Widget 树中有 CachedNetworkImage
,您可以从任何地方直接使用它。
关于android - 如何在 CachedNetworkImage flutter 中清除缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57059306/
我是一名优秀的程序员,十分优秀!