我打开特定活动时出现此错误
com.google.firebase.database.DatabaseException:无法将java.lang.String类型的对象转换为com.example.joe.metery.ChatMessage
类型
可以在此方法中找到错误:
private void displayChatMessage() {
ListView listOfMessages = findViewById(R.id.list_of_messages);
adapter = new FirebaseListAdapter<ChatMessage>(this, ChatMessage.class, R.layout.list_item_message,
mDatabaseRefUser.child("Chat").child(mAuth.getCurrentUser().getUid())
.child(userID).child(uploadID).child("Messages")) {
@Override
protected void populateView(View v, ChatMessage model, int position) {
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);
model.setMessageTime(new Date().getTime());
messageText.setText(model.getMessageText());
messageUser.setText(model.getMessageUser());
messageTime.setText(DateFormat.format("dd-MM-yyyy (HH:mm:ss)", model.getMessageTime()));
}
};
listOfMessages.setAdapter(adapter);
}
在做了很多改变后我自己找不到。
答案 0 :(得分:0)
尝试一下
Query query = FirebaseDatabase.getInstance().getReference().child("chats");
FirebaseListOptions<ChatMessage> options = new FirebaseListOptions.Builder<ChatMessage>()
.setQuery(query, ChatMessage.class)
.setLayout(R.layout.message)
.build();
adapter =新的FirebaseListAdapter(选项){