Pull to refresh
3
Karma
0
Rating
Виталий Вивчар @vivchar

Lead Android developer

Максимально упрощаем работу с RecyclerView

При этом даже написав 1000 методов для удобства, все равно не покроете все возможные случаи байндинга ячейки.

как раз для оставшихся случаев можно использовать, конструкцию приведенную вами выше.

Получается, сломали стандартный ViewHolder

не сломал, при желании можно использовать ViewRenderer, из предыдущей статьи. В нем можно использовать стандартный ViewHolder.

Есть, кстати, либа, которая работает примерно по такому принципу

Да, спасибо, только там возможности RecyclerView урезаны, здесь же все доступно — DiffUtil, Payload и т д

Максимально упрощаем работу с RecyclerView

написать код для удобства — это разве проблема?) тем более это будет скрыто за библиотекой, не конечному же пользователю это писать.
Если вы переживаете за «уродство», то это только лишь пример для статьи, для лучшего понимания

Легкая работа со списками — RendererRecyclerViewAdapter

DiffUtil работает с конкретной реализацией YourModelCallbak, а в адаптере мы работаем только с интерфейсом — ItemModel, конечно это можно сделать через интерфейс, но тогда все обязаны будут работать так — это ограничивает реализацию. В данном случае выбор остается за разработчиком, как оповещать адаптер о изменениях.
DiffUtil можно использовать извне адаптера.

Легкая работа со списками — RendererRecyclerViewAdapter

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

Легкая работа со списками — RendererRecyclerViewAdapter

Очень конструктивно. Да, мы так пишем, это утвержденный кодестайл внутри рабочей группы.

Information

Rating
Does not participate
Location
Томск, Томская обл., Россия
Date of birth
Registered
Activity