android - Glide 在内存中缓存离屏图像

标签 android caching memorycache android-glide

我只想在内存中加载和缓存图像,而不是将它们传递给 View ,稍后当我需要将它们加载到 UI 上以从内存缓存中获取它们时(如果它们存在于内存中)。

我试过:

Glide.with().load(uri).into(new SimpleTarget<GlideDrawable>(WIDTH,HEIGHT) 
{
     @Override
     public void onResourceReady(GlideDrawable resource, GlideAnimation<? super GlideDrawable> glideAnimation) {
    //left empty
    }
  }
);

但是当我稍后调用在 ImageView 中加载该 uri 时,它仍然会从路径而不是内存中加载它。

是否有另一种方法可以将图像缓存在内存中而不将它们加载到 UI 上?

最佳答案

可以找到有关如何在后台线程上缓存图像的文档 here .

下面是页面中的一些示例代码,显示了如何将文件下载到缓存,而不在 UI 中显示图像:

FutureTarget<File> future = Glide.with(applicationContext)
.load(yourUrl)
.downloadOnly(500, 500);

// Can be omitted if you only want to have the data cached (same goes for the "future" instance variable
File cacheFile = future.get();

但是,请确保您已配置 Glide 以启用缓存:https://github.com/bumptech/glide/wiki/Configuration

关于android - Glide 在内存中缓存离屏图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29545829/

相关文章:

android - 如何在 android 中为不同的 2 密度(如 mdpi、ldpi、hdpi)使用 9 个补丁图像。?

android - Android Gradle插件仅支持Kotlin Gradle插件1.3.10及更高版本

Android 登录替代方案

javascript - 停止 Chrome 缓存我的 JS 文件

caching - 用于移动设备的 Varnish 缓存

asp.net - 普通缓存类和MemoryCache类有什么区别?

java - 将 EhCache 磁盘存储内容加载到内存中

android - 将 AQuery 库与 PUT 请求和 StringEntity(String) 结合使用

caching - Redis 在填满和逐出键时有多慢? (LRU算法)

c# - 这是清除 C# MemoryCache 的好解决方案吗?