0
在我火力地堡数据库中的每个用户创建一个组,在组中添加:在一个Recylerview中添加两个FirebaseListAdapter?
(UserID)z.B(IOPFNV5423890)
• groups
• created
• (groupID)
• name (name)
• timestamp (usw...)
• added
• (groupID)
• name (name)
• (.....)
而现在我只有一个FirebaseListAdapter:
final ListUserFirebaseAdapter firebaseAdapter = new ListUserFirebaseAdapter(mFirebaseDatabaseReference.child("users/" + userModel.getId() + "/groups/created"), "", this);
firebaseAdapter.registerAdapterDataObserver(new RecyclerView.AdapterDataObserver() {
@Override
public void onItemRangeInserted(int positionStart, int itemCount) {
super.onItemRangeInserted(positionStart, itemCount);
int friendlyMessageCount = firebaseAdapter.getItemCount();
int lastVisiblePosition = mLinearLayoutManager.findLastCompletelyVisibleItemPosition();
if (lastVisiblePosition == -1 ||
(positionStart >= (friendlyMessageCount - 1) &&
lastVisiblePosition == (positionStart - 1))) {
rvListMessage.scrollToPosition(positionStart);
}
}
});
这里我设置了适配器的RecyclerView:
rvListMessage.setAdapter(firebaseAdapter);
但是有了这个代码,我只能可以设置一个适配器,但我想也设置这个适配器:
final ListUserFirebaseAdapter firebaseAdapter1 = new ListUserFirebaseAdapter(mFirebaseDatabaseReference.child("users/" + userModel.getId() + "/groups/added"), "", this);
firebaseAdapter1.registerAdapterDataObserver(new RecyclerView.AdapterDataObserver() {
@Override
public void onItemRangeInserted(int positionStart, int itemCount) {
super.onItemRangeInserted(positionStart, itemCount);
int friendlyMessageCount = firebaseAdapter1.getItemCount();
int lastVisiblePosition = mLinearLayoutManager.findLastCompletelyVisibleItemPosition();
if (lastVisiblePosition == -1 ||
(positionStart >= (friendlyMessageCount - 1) &&
lastVisiblePosition == (positionStart - 1))) {
}
}
});
我现在的问题:如何在一个RecyclerView中设置两个适配器,或者我该怎么做,这两个孩子(创建;添加)显示在一个RecyclerView?
甲RecyclerView“加入”只能根据单个适配器上。另外:FirebaseRecyclerAdapter只能基于一个引用/查询。 –
我该如何做到这一点? – flectiondev