Я использую FirebaseIndexRecyclerAdapter, как описано на https://github.com/firebase/FirebaseUI-Android/tree/master/database. Но в моем списке много элементов, и я хочу сначала загрузить только несколько элементов, а затем лениво загрузить остальные, когда пользователь прокручивает вверх.
Моя первая мысль заключалась в том, что я мог бы использовать mKeyRef.limitToLast(5)
, но затем для обновления требуется воссоздание адаптера, верно?
Как мне реализовать эту механику ленивой загрузки?
RecyclerView recycler = (RecyclerView) findViewById(R.id.messages_recycler);
recycler.setHasFixedSize(true);
recycler.setLayoutManager(new LinearLayoutManager(this));
mAdapter = new FirebaseIndexRecyclerAdapter<Chat, ChatHolder>(
Chat.class,
android.R.layout.two_line_list_item,
ChatHolder.class, mIndexRef,
mDataRef) {
@Override
public void populateViewHolder(ChatHolder chatMessageViewHolder, Chat chatMessage, int position) {
chatMessageViewHolder.setName(chatMessage.getName());
chatMessageViewHolder.setText(chatMessage.getText());
}
};
recycler.setAdapter(mAdapter);