как создать ArrayList с ограничениями?

В ArrayList приходят данные из БД (и постоянно добавляются)...

Хотелось бы узнать как можно сделать следующее:???

Что бы при пролистывании RecyclerView в 15 записей, вылазило уведомление (типа посмотрите рекламу) и если посмотрел, то открывается еще 15 записей, а если нет, то записи из ArrayList больше не показываются


Ответы (1 шт):

Автор решения: Антоша

У вас элементы в RecycleView имеют позицию, если список не инвертирован, но в самом начале будет элемент в позиции 0, далее при скроле можно определить позицию видимого элемента через менеджер

layoutManager.findFirstCompletelyVisibleItemPosition()

Ну или last, смотря в какую сторону скролите.

Ну вот.. когда позиция кратна 15 - можете сделать то, что нужно....

    private fun getOnScrollChangeListener(): View.OnScrollChangeListener {
        return View.OnScrollChangeListener { _, _, _, _, _ ->
            if (showAdv()) {
                viewModel.showAdverstment()
            }
        }
    }

    private fun showAdv(): Boolean {
        return layoutManager.findFirstCompletelyVisibleItemPosition() % 15 == 0
    }
→ Ссылка