Pull to refresh

Comments 10

Похоже на вариацию паттерна DelegateAdapter от Juan Ignacio в статье RecyclerView — Delegate Adapters

и да, DelegateAdapter от Juan Ignacio тоже основана та статье Hannes Dorfmann про Adapter Delegates(JOE'S GREAT ADAPTER HELL ESCAPE).

А почему нельзя поместить mRecyclerViewAdapter.notifyDataSetChanged(); внутри setItems()?
можно, но зачем? к примеру: мы меняем массив в презентере и хотим вызвать не notifyDataSetChanged(), a notifyItemRangeInserted()

А если вместо notifyDataSetChanged() заюзать DiffUtil?

DiffUtil работает с конкретной реализацией YourModelCallbak, а в адаптере мы работаем только с интерфейсом — ItemModel, конечно это можно сделать через интерфейс, но тогда все обязаны будут работать так — это ограничивает реализацию. В данном случае выбор остается за разработчиком, как оповещать адаптер о изменениях.
DiffUtil можно использовать извне адаптера.
AAAAA, вырвиглазное форматирование. Думал из-за хабра, но по ссылке на гитхабе тот же стайл.
вы правда
код так пишете?
Очень конструктивно. Да, мы так пишем, это утвержденный кодестайл внутри рабочей группы.
А что если я хочу добавлять элементы по одному? Например что бы анимировать их добавление. Может стоит добавить методы добавления и удаления одного элемента и внести notifyDataSetChanged/notifyItemInserted и т.д. внутрь адаптера?
для этого можно поставить новый список со всеми элементами и вызвать
notifyItemInsered(int position)
Sign up to leave a comment.

Articles