Страница 1 из 1

ListView - Adapter - MVP

Добавлено: 06 мар 2015, 13:34
breeve
Всем добрый день!
Вопрос такой, не совсем ясно как должно быть организовано приложение в случае если:

1. Есть класс Model где хранятся данные.
2. Есть Activity на котором выведен список.

Необходимо чтобы при изменении данных в модели, менялся список в адаптере что в свою очередь изменяло бы отображение на активити (возможно ошибаюсь).
Соответственно после изменения содержимого списка (порядка элементов или значений) отдельным контролом (Button, Plug n play, Событие), должны обновляться данные в модели, адаптер и отображения.

Я понимаю что такое наблюдатель и могу реализовать его в модели. Сделал небольшой пример с EditText и несколькими TextView, все обновляется как надо.

Но не понятно как реализовать это все со списком, так чтобы это не было костылем.
Не совсем ясно где положено хранится данным и как должно быть реализовано взаимодействие.
Знаю что в адаптерах можно зарегистрировать наблюдателей. Выходит что данные должны хранится в адаптере? а затем уже менять все подцепленные ListView?

Если кто-то подскажет какой то пример или статью, буду благодарен.

Re: ListView - Adapter - MVP

Добавлено: 06 мар 2015, 13:58
doter.ua
Адаптер использует коллекции (или просто массивы), поменял коллекцию, которую передавал к конструктор, вызвал у адаптера метод "обновись" и он перерисует весь список согласно данным в коллекции.
ArrayList<Model> models; + кастомный adapter extends ArrayAdapter<Model>