Как я могу использовать getRef () внутри адаптера RecyclerView?

Это код, который я пробовал:

@Override
public void onBindViewHolder(final ViewHolder holder, final int position) {
    // - get element from your dataset at this position
    // - replace the contents of the view with that element
    ChatMessage msg = mMessagesList.get(position);
    holder.messageTextView.setText(msg.getMessage());

    String key = getRef(position).getKey();


    holder.layout.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
        }
    });

}

Но getRef() красный и не работает. Я думаю, что он должен быть внутри populateViewHolder, и я не знаю, как его создать.

Что говорит красное сообщение, когда вы наводите на него курсор?

Reaz Murshed 03.06.2018 20:13

не может разрешить метод

Youssef Rdissi 03.06.2018 20:26

Похоже, вы не используете FirebaseRecyclerAdapter. Вы можете вызвать getRef, только если используете этот адаптер.

Levi Moreira 03.06.2018 20:59

есть ли эквивалент, который я могу использовать?

Youssef Rdissi 03.06.2018 22:25
2
4
485
1

Ответы 1

Из документации похоже, что метод не принимает параметры.

getRef()

Used to obtain a reference to the source location for this snapshot.

вы можете использовать приведенный ниже код в onBindViewHolder()

String _key=mMessagesList.get(position).getKey();

Другие вопросы по теме