java - View 的一个实例上的内存泄漏

标签 java android memory-management memory-leaks out-of-memory

我在 ColumnListView 上出现内存泄漏,我将在下面显示泄漏嫌疑点。它占用了已分配内存的 2,720,840 (18.65%) 字节。

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {


    gView = inflater.inflate(R.layout.ac_image_grid, container, false);


    multi = new WeakReference<ColumnListView> ((ColumnListView) (finalView.findViewById(R.id.list)));
<小时/>
One instance of "com.lib.ColumnListView" loaded by "dalvik.system.PathClassLoader @ 0x4123aa30" occupies 2,720,840 (18.65%) bytes. The memory is accumulated in one instance of "byte[]" loaded by "<system class loader>".

Keywords
dalvik.system.PathClassLoader @ 0x4123aa30
com.lib.ColumnListView
byte[]
<小时/>

XML

<?xml version="1.0" encoding="utf-8"?>
    <com.lib.ColumnListView 
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:pla="http://schemas.android.com/apk/res-auto"
        android:id="@+id/list"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        pla:plaColumnNumber="2"
        pla:plaLandscapeColumnNumber="3"
        >
    </comlib.ColumnListView>

最佳答案

这只是一个猜测,但你的转换语法对我来说看起来很奇怪,这也可能导致问题。相反,请尝试:

multi = new WeakReference<ColumnListView> ((ColumnListView)finalView.findViewById(R.id.list));

关于java - View 的一个实例上的内存泄漏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19651357/

相关文章:

java - 在 LWJGL 中使用 Slick 的 Unicodefont 绘制字符串

java - Android IntentService 无法在开机时启动

java - 如何将图像链接到另一个 xml 布局?

android - android如何集成loopback第三方登录

c# - .Net 处理非托管内存的方式是否不同于 C++ 运行时/二进制可执行文件?

java - FileUtils 写入行 "not applicable for arguements"?

java - Spring 3.0 中的多个属性文件

java - Selenium 测试因 java 失败

c - 在辅助函数中使用堆栈

c# - 匿名对象的内存范围 - C#.Net