我正在使用FirestorePagingAdapter从Firestore加载数据并将其显示在recyclerView中。 我得到了项目并将其绑定到视图。
override fun onBindViewHolder(holder: MyViewHolder, position: Int, model: Question) {
holder.bind(model)
}
fun bind(question: Question) {
//here I load questionData in my viewholder
}
我在viewHolder中将onClickListener设置为textViews,我的问题模型最多有5个选项显示在viewHolder中,因此当用户按下一个选项时,我想将数据更新到模型中
override fun onClick(v: View) {
val pressedQuestion = getItem(adapterPosition)?.toObject(Question::class.java)
}
在clickListener内部,我通过调用getItem和toObject得到了紧迫的问题。
我要在那里更新字段pressedQuestion.questionId = "answered"
但是,当该视图在屏幕上滚动并且比不返回sreen数据时,似乎没有改变,即使我将其设置为“ answered”,questionId字段也保持不变。
我尝试调用每个版本的notifyDatasetChanged方法,但无法正常工作。
如何从onClickListener内更改ViewHolder中FirestorePagingAdapter加载的数据