【发布时间】:2018-02-06 21:19:47
【问题描述】:
我是 android 开发的新手,我有一个问题。我尝试在 RecyclerView 中加载一些图像。传入数据的类型为 byte[]。
我的第一个解决方案是将 byte[] 转换为位图,它工作正常,但位图卡在内存中,我得到了 OutOfMemory 异常。
第二种解决方案是使用 Glide。
Glide.with(mContext)
.load(field.getImage())
.into(holder.mImageView);
但是通过这个解决方案,我在每个项目中都得到了相同的图像。 我认为问题出在 Glide 的缓存中,因为传入的数组不同。我尝试用这段代码解决这个问题:
requestOptions.skipMemoryCache(true);
requestOptions.diskCacheStrategy(DiskCacheStrategy.NONE);
Glide.with(mContext)
.applyDefaultRequestOptions(requestOptions)
.load(field.getImage())
.into(holder.mImageView);
}
但这无济于事。这样做的正确方法是什么?
【问题讨论】:
标签: android caching android-recyclerview android-glide