我正在使用firebase实时数据库开发一个聊天应用程序,我面临的问题是,当用户脱机时,他们会发送一条消息,对于大于4.2.2和4.2.2及以下版本的android版本,它会自动出现在recyclerview中,但不会显示脱机消息,我想在这些较低版本中执行相同的操作,如何在recyclerview中显示脱机消息(未同步)?这是fetchmessages方法:
private void fetchMessages() {
if(mChildEventListener == null) {
mChildEventListener = new ChildEventListener() {
@Override
public void onChildAdded(@NonNull DataSnapshot snapshot, @Nullable String previousChildName) {
if (snapshot.exists()) {
Messages messages = snapshot.getValue(Messages.class);
messagesList.add(messages);
adapter.notifyDataSetChanged();
mRecyclerView.smoothScrollToPosition(messagesList.size()-1);
}
}
@Override
public void onChildChanged(@NonNull DataSnapshot snapshot, @Nullable String previousChildName) {
}
@Override
public void onChildRemoved(@NonNull DataSnapshot snapshot) {
}
@Override
public void onChildMoved(@NonNull DataSnapshot snapshot, @Nullable String previousChildName) {
}
@Override
public void onCancelled(@NonNull DatabaseError error) {
}
};
messagesRef.child(pair).addChildEventListener(mChildEventListener);
}
}
1条答案
按热度按时间ha5z0ras1#
对于display msg offline,在应用程序类中使用下面的代码,如下所示
把你的名单改成