Выберите между ArrayAdapter и SimpleAdapter - PullRequest
21 голосов
/ 18 июня 2011

Мне было интересно, есть ли какие-то указания относительно того, как мы выбираем между ArrayAdapter и SimpleAdapter.

Для каждого элемента списка они будут представлены несколькими TextViews и Views, которые хорошо оформляются. Я понимаю, что могу реализовать оба без каких-либо проблем, используя ArrayAdapter или SimpleAdapter.

Есть ли какие-то указания относительно того, как мы выбираем из них? Я думаю,

  1. ArrayAdapter позволяет нам динамически добавлять новый элемент, даже после отображения списка в течение этого времени. Обратите внимание, что ArrayAdapter имеет метод add.
  2. SimpleAdapter используется для случая, после отображения списка новые элементы больше не могут быть добавлены.

Это руководство, которому мы должны следовать?

Ответы [ 2 ]

30 голосов
/ 18 июня 2011

Лично я не нахожу SimpleAdapter ужасно полезным. Данные вашей модели редко бывают естественными в «ArrayList из Maps», и тратить время на копирование данных просто для того, чтобы вставить их в адаптер.

Я бы либо использовал ArrayAdapter (если мои данные модели - это массив объектов), либо BaseAdapter (если мои данные модели - это какая-то другая структура данных в памяти).

0 голосов
/ 06 мая 2017

Адаптер массива можно использовать для заполнения представления списка из динамического массива, тогда как простой адаптер используется для заполнения представления списка из хэш-карты или ассоциативного массива, поскольку в адаптере массива нет конструктора, который мог бы принимать массив.ключей и массив int, который является идентификаторами макета, в которые мы хотим заполнить данные.

...