ISo我在我的應用程序中有羣聊。我有「房間」和按鈕加入「房間」,當用戶點擊加入按鈕時,所有的舊消息都出現在屏幕上,但我只想顯示新的消息,我正在使用Firebase列表適配器來顯示......一切正常,但只是不要不知道如何顯示空白列表和只有新消息,ty。Android羣聊只顯示空的listview沒有舊消息只是當用戶加入羣組的新消息
btnJoin.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
DatabaseReference db = FirebaseDatabase.getInstance().getReference("EventsUsers").child(uniqEventID);
db.child(user.getUid()).setValue("");
}
});
btnSend.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
DatabaseReference db = FirebaseDatabase.getInstance().getReference("EventsUsers").child(uniqEventID).child("Messages").push();
db.setValue(new ChatMessage(ePlain.getText().toString(),user.getDisplayName()));
ePlain.setText("");
ePlain.requestFocus();
}
});
private void displayChat() {
btnSend.setVisibility(View.VISIBLE);
eventChat.setVisibility(View.VISIBLE);
FirebaseListAdapter<ChatMessage> adapter = new FirebaseListAdapter<ChatMessage>(EventDetails.this,ChatMessage.class,R.layout.one_chat_list,FirebaseDatabase.getInstance().getReference("EventsUsers").child(uniqEventID).child("Messages")) {
@Override
protected void populateView(View v, ChatMessage model, int position) {
TextView messageTextm,messageUser,messageTime;
messageTextm = (TextView) v.findViewById(R.id.chatMessage);
messageUser = (TextView)v.findViewById(R.id.chatUserName);
messageTime = (TextView)v.findViewById(R.id.message_time);
messageTextm.setText(model.getMessageText());
messageUser.setText(model.getMessageUser());
messageTime.setText(DateFormat.format("dd-MM-yyyy (HH:mm)", model.getMessageTime()));
}
};
eventChat.setAdapter(adapter);
}
DatabaseReference check = FirebaseDatabase.getInstance().getReference("EventsUsers").child(uniqEventID);
check.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
if(dataSnapshot.hasChild(user.getUid())){
displayChat();
}
}
因此,當用戶點擊加入有消息顯示按鈕列表視圖與所有舊的郵件,他加入之前...和抱歉沒有上傳任何代碼,我是新來的,告訴我,如果你需要別的東西我的代碼 這是我的數據庫結構https://ibb.co/d47D9v
歡迎來到堆棧溢出。當問一個問題時,我們要求你發佈你的代碼,並在適用的地方嘗試過。這會給你最好的幫助。您可能會發現這篇文章有用:https://stackoverflow.com/help/how-to-ask – JCooke