使用Glide,ArrayLists在ViewPager中重复出现?

时间:2016-02-16 04:54:03

标签: java android arraylist android-glide

我正在使用GlideDrawable中的图片加载到包含ViewPager的片段中,一切顺利,但是当我一次又一次地安装应用程序时,那么图像列表开始在ViewPager中重复2,3次,即在ArrayList的最后一页之后,它将从第一次开始再次开始2,3次并重复列表,如果我通过转到清除应用程序数据Settings>Apps然后它变得很好,我尝试跳过DiskMemory,但它仍然相同。

不重要,但这是PagerAdapter的一部分:

Glide.with(mContext)
            .load((Integer) data.get(position))
            .fitCenter()
            .diskCacheStrategy(DiskCacheStrategy.NONE)
            .into(mImageView);

解决此问题的最佳方法是什么?退出时清除缓存?或者跳过内存和磁盘缓存?

图像数量实际上大约为700,但图像尺寸并不多,即大约30kb到50kb。

1 个答案:

答案 0 :(得分:0)

对于其他有同样问题的人。

drawable ID可能会在每次编译时发生变化,这就是为什么我们有R类,而我正在测试我的调试版本,并且版本代码在构建之间不会改变。

Glide使用VersionCodeSignature (see load(int) sources)来确保我所经历的事情在现实生活中不会发生,因为Play Store会强制您更改每个版本的版本。

因此,当我们更改VersionCode Glide时,不使用旧缓存并为新构建创建新缓存。

希望它有助于某人