Утечка памяти на одном экземпляре View

116
10

У меня есть утечка памяти в 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>

спросил(а) 2021-01-25T17:25:38+03:00 4 месяца, 3 недели назад
1
Решение
63

Это всего лишь предположение, но ваш синтаксис каста выглядит странным для меня, и это может вызвать проблемы. Вместо этого попробуйте:

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

ответил(а) 2021-01-25T17:25:38+03:00 4 месяца, 3 недели назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема