0

我有它的 listView 和自定义 ArrayAdapter。在我的列表视图中有很多图片,我使用强大的内存清理:

@Override
public void onDestroy() {       
    list.clear();
    adapter.notifyDataSetChanged();
    listView.setAdapter(null);
    super.onDestroy();
}

并使用 LazyLoader 进行图像加载。但是在使用我的应用程序一段时间后(当我更新列表时)我仍然会得到“位图大小超过 vm 预算”错误。虽然如果我按下主页按钮并返回应用程序内存被清除。没有它如何清除内存?

4

2 回答 2

1

确保对不再使用的所有 Bitmap 对象调用recycle()以尽快释放其内存。

此外,使用Bitmap.createScaledBitmap()创建一个与 ImageView 所需一样小的位图,从而节省一些额外的内存。

于 2012-06-27T10:00:36.707 回答
0

尝试阅读有关加载大型位图的信息。这将有助于避免内存泄漏问题。

于 2012-06-27T10:18:55.287 回答