Firebase列表适配器构造器错误

我创建了一个显示聊天消息的功能,遵循了教程,并且查看了Firebase列表适配器的文档,但是无论我做什么,都会出现此错误:

Error:(98, 19) error: constructor FirebaseListAdapter in class 

FirebaseListAdapter<T> cannot be applied to given types;

required: FirebaseListOptions<ChatMessage>

found: Chat,Class<ChatMessage>,int,DatabaseReference

reason: actual and formal argument lists differ in length

where T is a type-variable:

T extends Object declared in class FirebaseListAdapter

这是我的代码:

private void displayChatMessage() {

ListView listOfMessage = (ListView)findViewById(R.id.list_of_messages);

FirebaseRecyclerOptions<ChatMessage> options =

new FirebaseRecyclerOptions.Builder<ChatMessage>()

.setQuery(query, ChatMessage.class)

.build();

adapter = new FirebaseListAdapter<ChatMessage, Holder>(options){

@Override

protected void populateView(View v, ChatMessage model, int position) {

//Get references to the views of list_item.xml

TextView messageText, messageUser, messageTime;

messageText = (TextView) v.findViewById(R.id.message_text);

messageUser = (TextView) v.findViewById(R.id.message_user);

messageTime = (TextView) 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);

}

回答:

从FirebaseUI 3.0+版本中隐含以下内容

删除此:

   adapter = new FirebaseListAdapter<ChatMessage>(this,ChatMessage.class,R.layout.list_item,FirebaseDatabase.getInstance().getReference())

你需要添加以下内容:

FirebaseListOptions<ChatMessage> options =

new FirebaseListOptions.Builder<ChatMessage>()

.setQuery(query, ChatMessage.class)

.setLayout(android.R.layout.simple_list_item_1)

.build();

adapter = new FirebaseListAdapter<ChatMessage>(options){

query是你对列表适配器示例进行的查询:

Query query = FirebaseDatabase.getInstance().getReference().child("chats");

以上是 Firebase列表适配器构造器错误 的全部内容, 来源链接: utcz.com/qa/398026.html

回到顶部