@Drew20
Недопрограммист Android))

Как сделать проверку на достижение верха списка recyclerView?

У меня в приложении есть список созданный на основе recyclerView у которого есть свой адаптер. Этот адаптер заполняется данными которые он получает с сервера, возьмем к примеру список сообщений. На текущий момент я пытаюсь сделать добавление в список новых айтемов при достижении нижнего или верхнего уровня списка (на подобии списка сообщений Gmail). Я читал про библиотеку которая используется в Gmail, но я не понял как ее можно использовать в моей ситуации. Сейчас у меня получилось сделать добавление элементов списка при достижении нижней границы списка, и вроде все работает нормально. Но я не смогу сделать тоже самое используя те наработки которые я получил при работе с достижением нижней границы списка. Для начала я создал интерфейс:
public interface OnBottomReachedListener {
    void onBottomReached(int position);
}


дальше в адаптере создаю функцию:
void setOnBottomReachedListener(OnBottomReachedListener onBottomReachedListener) {
        this.onBottomReachedListener = onBottomReachedListener;
    }


и дальше в onBindViewHolder вставляю проверку, которая не всегда правильно срабатывает но в целом все работает:
if (position == getItemCount() - 1) {
            onBottomReachedListener.onBottomReached(position);
        }


В активити после создания и заполнения адаптера я добавил слушатель:
((ListAdapter) adapter).setOnBottomReachedListener(new OnBottomReachedListener() {
                            @Override
                            public void onBottomReached(int position) {
                                getMessages(type, a_token, offset + 50);
                            }
                        });


я не могу понять как именно мне перевернуть проверку чтобы она срабатывала и когда я достигаю вершины списка. Надеюсь на вашу помощь и полезные советы. Заранее спасибо.
  • Вопрос задан
  • 38 просмотров
Пригласить эксперта
Ответы на вопрос 1
iLLuzor
@iLLuzor
Java, Kotlin, Android Developer
Очень сомнительное решение. Лучше просто повесить OnScrollListener на RecyclerView
https://stackoverflow.com/questions/36127734/detec...
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы
Frogogo Москва
от 100 000 руб.
Blogman Оренбург
от 20 000 до 110 000 руб.
UNIQ systems Казань
от 90 000 руб.
22 янв. 2019, в 00:48
60 руб./за 1000 зн.
22 янв. 2019, в 00:09
120000 руб./в месяц
21 янв. 2019, в 23:37
1000 руб./за проект