android - 如何在 Glide 中缓存图像

标签 android image caching

当我使用滑翔时,有些图像无法加载。我如何将它存储在缓存中或任何地方,直到我将使用该应用程序时加载所有图像。
我的问题的示例图片:

screenshot

我的代码:

.java

             home_ib7_monster_truck = 
            (ImageButton)findViewById(R.id.home_ib7_monster_truck);
             Glide.with(Home.this)
            .load(R.drawable.moviep_monster_truck)
            .centerCrop()
            .fitCenter()
            .diskCacheStrategy(DiskCacheStrategy.ALL)
            .into(home_ib7_monster_truck);

.xml
<ImageButton
            android:id="@+id/home_ib7_monster_truck"
            android:layout_width="98dp"
            android:layout_height="155dp"
            android:layout_alignStart="@+id/home_ib4_keplers_dream"
            android:layout_below="@+id/home_ib4_keplers_dream"
            android:layout_marginTop="14dp"
            android:background="@android:color/transparent"
            android:scaleType="fitCenter" />

我使用 glide 是因为我看到它很容易使用,而且我可以从 drawables 中加载图像。
主要问题是,它是随机执行的,所以我的意思是一旦我的所有图像都没有出现,另一次所有图像都可以看到,我不知道为什么。
我使用 980x1550 大小的图像,因为我不希望我的图像充满像素,当我在 .xml 中使用另一种方法(如 src)时出现内存错误。
所以有人知道任何解决方案,我该如何缓存图像?

编辑:
有了这些 (.diskCacheStrategy(DiskCacheStrategy.RESULT ; diskCacheStrategy(DiskCacheStrategy.Source) 我有同样的问题。
我从 LogCat 得到这个:抛出 OutOfMemoryError “无法分配 1519012 字节分配,230112 空闲字节和 224KB 直到 OOM”
我不知道什么时候应该缓存它。

最佳答案

请按照官方文档阅读以下说明:https://futurestud.io/tutorials/glide-caching-basics

enter image description here

enter image description here

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

相关文章:

java - 如何在android Activity中使用多重继承?

java - 在sqlite Android中向容器类添加数据

jquery - 背景图片问题

javascript - 创建 img 元素并附加到 dom 没有终止

javascript - iphone离线webapp,如何处理数据存储?

caching - Redis 的优雅失效

css - 整个网站是否自动缓存(Google 使用 &lt;style&gt;)?

android - Admob 测试 ID 不断变化

android - 如何在 Project Tango 中使用实验性网格化 API

javascript - 使用 Hermite-resize 缩小图像会莫名其妙地产生细黑线