Я создаю приложение чата, используя FirebaseDatabase
, но при получении сообщения возникает проблема, однако пользователь может нажать на сообщение.
Я использовал ListView
и FirebaseListAdapter
есть мой метод showMsg()
final ListView msgs = findViewById(R.id.lv_msg);
Query query = FirebaseDatabase.getInstance().getReference().limitToLast(50);
FirebaseListOptions<ChatMessages> options = new FirebaseListOptions.Builder<ChatMessages>().setQuery(query, ChatMessages.class).setLayout(R.layout.list_item).build();
chatMessageAdapter = new FirebaseListAdapter<ChatMessages>(options) {
@Override
protected void populateView(View v, ChatMessages model, int position) {
TextView msgView, timeView;
CircleImageView profileView;
msgView = v.findViewById(R.id.msg_view);
timeView = v.findViewById(R.id.msg_post_time);
profileView = v.findViewById(R.id.profile_image);
msgView.setText(model.getmText());
timeView.setText(DateFormat.format("DD-MM-YYYY (HH:MM:SS)", model.getmTime()));
Picasso.get().load(model.getmUser()).into(profileView);
}
};
msgs.setAdapter(chatMessageAdapter);
А вот и моя база
Кто-нибудь знает, где я делаю неправильно.
Обновлено
ChatMessage.java
public class ChatMessages {
private String mText;
private String mUser;
public long getmTime() {
return mTime;
}
public void setmTime(long mTime) {
this.mTime = mTime;
}
private long mTime;
public ChatMessages(String mText, String mUser) {
this.mText = mText;
this.mUser = mUser;
this.mTime = new Date().getTime();
}
public ChatMessages() {
}
public String getmText() {
return mText;
}
public void setmText(String mText) {
this.mText = mText;
}
public String getmUser() {
return mUser;
}
public void setmUser(String mUser) {
this.mUser = mUser;
}
}