我正在使用Firebase制作聊天应用程序,但未显示用于显示聊天的ListView。
我放了Logs并尝试了所有可能的解决方案,但未调用该方法。
以下是我正在使用的依赖项:
implementation 'com.firebaseui:firebase-ui-auth:4.3.1'
implementation 'com.firebaseui:firebase-ui-database:4.3.1'
implementation 'com.google.firebase:firebase-auth:18.1.0'
implementation 'com.google.firebase:firebase-database:18.0.1'
implementation 'com.google.android.gms:play-services-auth:16.0.1'
implementation 'com.firebaseui:firebase-ui-database:1.1.1'
这是模型类
package com.example.chattapplication;
import java.util.Date;
public class ChattMessage {
private String messageText;
private String messageUser;
private long messageTime;
public ChattMessage(String messageText, String messageUser) {
this.messageText = messageText;
this.messageUser = messageUser;
messageTime = new Date().getTime();
}
public ChattMessage(){
}
public String getMessageText() {
return messageText;
}
public void setMessageText(String messageText) {
this.messageText = messageText;
}
public String getMessageUser() {
return messageUser;
}
public void setMessageUser(String messageUser) {
this.messageUser = messageUser;
}
public long getMessageTime() {
return messageTime;
}
public void setMessageTime(long messageTime) {
this.messageTime = messageTime;
}
}
这是MainActivity.class中的代码
@Override
protected void onStart() {
super.onStart();
adapter.startListening();
}
private void displayChatMessage() {
ListView listofMessage= findViewById(R.id.list_of_message);
Query query= FirebaseDatabase.getInstance().getReference();
FirebaseListOptions<ChattMessage> options= new FirebaseListOptions.Builder<ChattMessage>()
.setQuery(query,ChattMessage.class)
.setLifecycleOwner(this)
.setLayout(R.layout.list_item)
.build();
adapter= new FirebaseListAdapter<ChattMessage>(options)
{
@Override
protected void populateView(View v, ChattMessage model, int position) {
Log.d(TAG, "populateView: Function Working");
TextView messageText,messageUser,messageTime;
messageText= v.findViewById(R.id.message_text);
messageUser= v.findViewById(R.id.message_user);
messageTime= v.findViewById(R.id.message_time);
messageText.setText(model.getMessageText());
messageUser.setText(model.getMessageUser());
messageTime.setText(DateFormat.format("dd-MM-yyyy (HH:mm:ss)",model.getMessageTime()));
}
};
listofMessage.setAdapter(adapter);
}
@Override
protected void onStop() {
super.onStop();
adapter.stopListening();
}
我希望显示聊天记录,但不显示。请指导我问题出在哪里,什么地方了。