Выберите между ArrayAdapter и SimpleAdapter
Мне было интересно, есть ли какие-то рекомендации, как мы выбираем между ArrayAdapter
и SimpleAdapter
.
Для каждого элемента списка они будут представлены несколькими TextViews и представлениями, которые красиво оформляются. Я понимаю, что могу реализовать оба без проблем, используя ArrayAdapter
или SimpleAdapter
.
Есть ли какие-либо рекомендации относительно того, как мы выбираем среди них? Моя догадка
-
ArrayAdapter
позволяет нам динамически добавлять новый элемент, даже после того, как список будет показан в течение этого времени. Обратите внимание, что ArrayAdapter
имеет метод add
.
-
SimpleAdapter
используется для случая, как только список отображается, новый элемент не может быть добавлен.
Это руководство, которому мы должны следовать?
Ответы
Ответ 1
Лично я не нахожу SimpleAdapter
ужасно полезным. Ваши данные модели редко встречаются в "a ArrayList
of Maps
", и расточительно копировать материал, только чтобы получить его в адаптере.
Я бы использовал либо ArrayAdapter
(если мои данные модели представляют собой массив объектов) или BaseAdapter
(если мои данные модели - это некоторая другая структура данных в памяти).
Ответ 2
Адаптер Array можно использовать для заполнения вида списка из динамического массива, в то время как простой адаптер используется для заполнения списка из массива Hash или ассоциативного массива, поскольку в адаптере Array нет конструктора, который мог бы принимать массив ключей и массива int, которые являются идентификаторами макета, которые мы хотим заполнить.