Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Noosle
0 / 0 / 0
Регистрация: 10.04.2012
Сообщений: 4
#1

Большое количество итемов в listView! - Программирование Android

10.04.2012, 16:30. Просмотров 1014. Ответов 6
Метки нет (Все метки)

При выводе большого количества итемов в listView, используя адаптор, столкнулся с проблемой переполнения памяти. Загуглив, нашел некоторые варианты решений. Как вы фиксите это? Какой на ваш взгляд самый оптимальный способ?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.04.2012, 16:30
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Большое количество итемов в listView! (Программирование Android):

Сделать большое количество Popup Menu
Добрый день! Допустим у меня есть 10 кнопок и каждой кнопке нужно сделать...

Получить количество строк в TextView (ListView)
привет всем. уже очень давно никак не могу получить количество строк в...

Как заставить ListView показывать ограниченное количество элементов?
Будет динамично заполняющийся лист Как сделать чтобы ListView показывал...

Узнать количество строк ListView, которое помещается в Linear Layout
Подскажите плз. Как узнать какое целое кол-во строк listView может поместиться...

ListView. После добавления кнопки перестал быть доступен сам ListView
Кастомизировал ListView с помощью нескольких TextView. Но после того, как...

Listview вывод данных и переход по нажатию на другой Listview SQLite
Доброго извините за название темы, долго не мог сформировать название, В общем...

6
Bes-s
31 / 31 / 2
Регистрация: 05.11.2011
Сообщений: 178
10.04.2012, 22:04 #2
Загружать объект в память когда он появляется на экране и выгружать когда пропадает. Долго, муторно реализовывать, зато работает.
В случае с множеством bitmap'ов совсем другая сказка... более сложная, с вниканием в суть жизненного цикла объекта bitmap, способами пережатия, которыми оперирует сам android, и тд и тп...
Лучше напишите какие у вас объекты, сколько их...
1
dajver
410 / 274 / 22
Регистрация: 18.09.2010
Сообщений: 1,114
11.04.2012, 23:27 #3
А как по мне просто создать список данных и вынести их в лист вью циклом. Как по мне самое оптимальное.
0
Noosle
0 / 0 / 0
Регистрация: 10.04.2012
Сообщений: 4
13.04.2012, 15:56  [ТС] #4
Нашел причину - у листвью был установлен background.(картинка) после его отключения все стало работать корректно.

Добавлено через 3 минуты
Как я понял, в моей ситуации при отрисовки нового итема на активити , новый бекграунд ложился поверх старого, что и вызывало лаги =(

Добавлено через 1 час 51 минуту
Теперь не могу понять как запилить нормально background=(
0
Bes-s
31 / 31 / 2
Регистрация: 05.11.2011
Сообщений: 178
13.04.2012, 16:42 #5
сделай под listview imageview с нужным бекграундом.
ну + смотря какой бекграунд, что в листвайве... когда идет много графики на обычном canvas в андро, то довольно сложно уследить за тем, чтоб не возникало переполнений памяти... тут уже все происходит, лечится с привязкой к частному случаю, что как и где надо менять.
как вариант можно написать собственный контрол вместо listview, избавив его от лишней нагрузки.
1
Noosle
0 / 0 / 0
Регистрация: 10.04.2012
Сообщений: 4
13.04.2012, 16:45  [ТС] #6
<?xml version="1.0" encoding="UTF-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/listcoctails"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<ImageView
android:id ="@+id/listimage_bg"
android:layout_height="wrap_content"
android:src="@drawable/menupicture"
android:layout_width="wrap_content"/>
<ListView
android:id="@android:id/list"
android:layout_width="fill_parent"
android:layout_height="fill_parent"/>
</RelativeLayout>

Так и сделал. картинка простая. весит 15 кб. Но никак не могу понять, почему когда я ее растягиваю её с помощью fill_parent лаги остаются.
0
Noosle
0 / 0 / 0
Регистрация: 10.04.2012
Сообщений: 4
25.04.2012, 08:46  [ТС] #7
up!!!!
0
25.04.2012, 08:46
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.04.2012, 08:46
Привет! Вот еще темы с решениями:

Данные из SQlite в ListView, обработка события ListView
Ребят, есть БД, ListView. Надо при нажатии на строчку ListView вытащить данные...

Передача данных из ListView в другой Activity в ListView
Добрый день. Пытаюсь разобраться с передачей данных с ListView, но выходит что...

ListView, ToggleButton, SQLite, CursorAdapter. Как найти idItem в ListView, где была нажата ToggleButton?
Добрый день. Затрудняюсь понять один момент: У меня есть ListView,...

Копирование данных из 1 listView во 2 listView
Нужно что бы при нажатии на один элемент в первом ListView он копировался во...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru