我有一个RecyclerView,它有一个自定义对象数组,每个对象包含一个空位图,还有一个用于位图源的String和一些其他属性。在我的onBindViewHolder的RecyclerView方法中,我从源url下载图像,并将位图值设置为ArrayList中相应对象的属性,因此下次绑定视图时,不必再次下载图像。
我现在想知道的是,这是否被认为是好做法?从旧设备上开始,我意识到,过了一段时间后,我得到了一个OutOfMemoryException,那么做这种事情的正确方式是什么呢?谢谢
编辑
我想尝试这样的方法来限制加载的位图:
int offScreenLimitLeft = position-10;
int offScreenLimitRight = position+10;
if (offScreenLimitLeft>=0){
itemsArrayList.get(offScreenLimitLeft).myObj.bitmap = null;
}
if (offScreenLimitRight<=itemsArrayList.size()-1){
itemsArrayList.get(offScreenLimitRight).myObj.bitmap = null;
}https://stackoverflow.com/questions/41352226
复制相似问题