В двух словах, я пытаюсь отобразить анимированный GIF в веб-просмотре.Это веб-представление в элементе списка.Итак, существует список различных файлов GIF.
Я устанавливаю GIF-файлы для списка таким образом:
View v = convertView;
if (v == null || position == 1) {
LayoutInflater vi = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
v = vi.inflate(R.layout.routine_exercise_item, parent, false);
}
TextView t = (TextView)v.findViewById(R.id.routine_exercise_num);
t.setText(getResources().getString(R.string.other_exercise) + " " + (position));
t = (TextView)v.findViewById(R.id.routine_exercise_description);
t.setText(mitems.get(position).description);
WebView anim = (WebView)v.findViewById(R.id.routine_exercise_gif);
anim.loadUrl("file:///android_asset/" + mitems.get(position).imagePath);
anim.setBackgroundColor(0);
Я делаю это внутри getView подкласса ArrayAdapter <>.
Все загружается просто отлично и gif работает ... Однако, как только он отображается, моя куча растет как сумасшедшая.Требуется всего 30-45 секунд, чтобы куча достигла 32 МБ на моем EVO 3d и вылетела.
Я не уверен, что я делаю неправильно, чтобы произошла такая утечка памяти.
Любые советы?