从内存中删除View

时间:2015-09-18 09:44:26

标签: java android view memory-leaks

我使用4个视图(在XMl中定义)在应用程序启动时执行动画,但在动画完成后,我想释放位图正在使用的内存。我该怎么办?截至目前,完成后,视图设置为GONE,但它们仍占用内存。

2 个答案:

答案 0 :(得分:1)

您必须回收位图,然后必须释放堆中分配的内存:

if (view.getBackground() != null) {
    try {
        view.getBackground().setCallback(null);
        ((BitmapDrawable) view.getBackground()).getBitmap().recycle();
        view.destroyDrawingCache();
        view.notifyAll();
    } catch (Exception e) {
        e.printStackTrace();
    }
}

答案 1 :(得分:0)

试试这个,以释放记忆。

bitmap.recycle();
bitmap = null;