Когда то использовал в проектах подобную реализацию, но здесь есть один нюанс если размер экрана позволяет не заполняться при первом вызове данных, скажем большой планшет или количество меньше и задается с апи то onScroll не будет вызываться и следующие данные не подгрузятся, решением этого было отказ от scrollListener'a и добавить проверку на onBindViewHolder
override fun onBindViewHolder(holder: ViewHolder<T, V>, position: Int) {
holder.bind(items[position], onItemBind)
if (position == items.lastIndex) {
onLastItemBind?.invoke()
}
}
Когда то использовал в проектах подобную реализацию, но здесь есть один нюанс если размер экрана позволяет не заполняться при первом вызове данных, скажем большой планшет или количество меньше и задается с апи то onScroll не будет вызываться и следующие данные не подгрузятся, решением этого было отказ от scrollListener'a и добавить проверку на onBindViewHolder