вот моя проблема
Он говорит, что ему нужен контекст firebase, вот что сказала студия Android;
Требуемый тип: com.google.firebase.database.core.Context
При условии: android.content.Context
это метод onstart, ошибка в viewHolder.setDetails(getApplicationContext......
@Override
protected void onStart() {
super.onStart();
FirebaseRecyclerAdapter<Model, ViewHolder> firebaseRecyclerAdapter =
new FirebaseRecyclerAdapter<Model, ViewHolder>(Model.class, R.layout.row, ViewHolder.class, mRef) {
@Override
protected void populateViewHolder(ViewHolder viewHolder, Model model, int i) {
viewHolder.setDetails(getApplicationContext(), model.getTitle(), model.getDescription(), model.getImage());
}
};
ПРИМЕЧАНИЕ: это действие не является фрагментом, это обычное действие
public class ViewHolder extends RecyclerView.ViewHolder {
View mView;
public ViewHolder( View itemView) {
super(itemView);
mView = itemView;
}
public void setDetails (Context ctx, String title, String description, String image){
TextView mTitleView = mView.findViewById(R.id.rTitleTV);
TextView mDetailTv = mView.findViewById(R.id.rDescriptionTV);
ImageView mImageTv = mView.findViewById(R.id.rImageView);
mTitleView.setText(title);
mDetailTv.setText(description);
Picasso.get().load(image).into(mImageTv);
}
}
ошибка: несовместимые типы: android.content.Context не может быть преобразован в com.google.firebase.database.core.Context viewHolder.setDetails(getApplicationContext(), model.getTitle(), model.getDescription(), model.getImage() ); это ошибка, которую я получил при запуске моего приложения
Вы не читали мой комментарий?
сейчас добавлю, спасибо
я не заметил, извините
Совет для профессионалов: вам не нужно передавать контекст, если у вас уже есть представление. Просто используйте контекст из представления. например: mView.getContext()
о боже мой, это сработало. Я изменил это на это, и это сработало; viewHolder.setDetails(viewHolder, model.getTitle(), model.getDescription(), model.getImage());
Мне не нужно было передавать контекст, потому что у меня уже было представление. Поэтому я заменил getApplicationContext
на viewHolder
.
вот окончательный код;
viewHolder.setDetails(viewHolder, model.getTitle(), model.getDescription(), model.getImage());
**спасибо OhhhThatVarun за его потрясающую помощь/совет **
Возможно, вы использовали неправильный импорт в классе ViewHolder для Context или опубликуйте свой
ViewHolder