如何在颤动中将 ImageCache 保存到磁盘?
Posted
技术标签:
【中文标题】如何在颤动中将 ImageCache 保存到磁盘?【英文标题】:How to save ImageCache to the disk in flutter? 【发布时间】:2017-11-17 18:29:23 【问题描述】:我使用 Image.network 语句从 Internet 加载大量图像,并且我知道 ImageCache 只会保存它们,直到应用程序运行为止。但我想保存缓存,因为我不想在应用程序启动时总是下载图像。 那么:在flutter中可以将缓存保存到磁盘吗?
【问题讨论】:
【参考方案1】:Flutter 的 image cache 用于解码图像。听起来您想要的是编码图像文件的缓存。
您可以通过将文件下载到设备存储并使用Image.file
自行构建它,但您可能希望实现某种驱逐逻辑以确保您不会在设备上占用太多空间。
您可以将Image.asset
用于要与您的应用捆绑的静态图片。
考虑在用户到达显示位置之前预加载您的图像。这会造成他们立即加载的错觉。
【讨论】:
“驱逐”逻辑? @ThinkDigital "Eviction" 表示从缓存中删除。以上是关于如何在颤动中将 ImageCache 保存到磁盘?的主要内容,如果未能解决你的问题,请参考以下文章
如何在颤动中将列表数据从一个屏幕传递到另一个屏幕(StatefulWidget)
如何在颤动中将 Map<String, List<object>> 保存在 sharedPreferences 中?