Как избежать перерисовки всех видов в ArrayAdapter - PullRequest
3 голосов
/ 25 марта 2010

У меня есть ArrayAdapter, питающий ListView. Я хотел бы изменить данные за ArrayAdapter и обновить ListView. Похоже, notifyDataSetChanged(); будет именно то, что я ищу, но он обновляет весь ListView, и я предпочел бы обновлять построчно.

Есть ли способ сделать это с ArrayAdapter, или мне нужно каким-то другим способом управлять своими данными, если я хочу эту функцию?

1 Ответ

5 голосов
/ 25 марта 2010

Насколько я знаю, это не так.

Он будет перерисовывать только видимые строки. Это происходит, когда вы все равно прокручиваете. Если вы прокручиваете вниз, и одна из ваших строк (вид) выходит за верх, Android, по возможности, использует ее при рисовании строк, которые видны снизу. Для этого предназначен 3-й параметр (convertView) ListAdapter.getView ().

Я почти уверен, что Android рисует только те строки, которые вы видите в любом случае.

...