Как загрузить больше объектов Firebase на RecyclerView Scroll? - PullRequest
0 голосов
/ 10 сентября 2018

У меня есть приложение с чатами.У каждой комнаты есть идентификатор, который служит ссылкой на базу данных, и сообщения выводятся оттуда и отображаются в RecyclerView.Я знаю, как увеличить количество сообщений, которые загружаются в onCreate / onStart, с помощью Query.orderbykey (). Limittolast (), но как мне загружать и отображать дополнительные элементы, когда пользователь прокручивает вверх страницы RecyclerView активности чата, а-ля мессенджер Facebook?

Редактировать: Вот конструкция моего адаптера0r:

public ChatRecyclerViewAdapter(Context mContext, ArrayList<String> mMessage, ArrayList<String> mAuthor, String mRoomID, DatabaseReference reference) {
    this.mContext = mContext;
    this.mRoomID = mRoomID;
    numberOfRecentMessages=20;

    messageList = new ArrayList<>();
    mDatabaseReference = reference.child(mRoomID+"_messages");
    recentMessages = mDatabaseReference.orderByKey().endAt(100).limitToLast(numberOfRecentMessages);
    recentMessages.addChildEventListener(mListener);

}

1 Ответ

0 голосов
/ 10 сентября 2018

Звучит так, будто вы ищете endAt(), который берет ключ последнего элемента, который нужно вернуть. Скажем, вы в настоящее время показывает эти ключи:

key20
key21
key22
key23
key24
key25
key26
key27
key28
key29

Тогда вы можете получить предыдущие предметы с:

ref.orderByKey().endAt("key20").limitToLast(11)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...