我有一个通用列表,需要在我的应用程序中的大多数活动/片段上显示。为此,我创建了一个布局并在其中添加了回收器,如下面的代码所示。然后根据需要将该布局包含在活动/片段中。我正在使用 MVVM 和 android 绑定。我的问题是 recyclerview 的 onCreateViewHolder 甚至 getItemCount 从未被调用。我的 updateList 函数从视图模型成功调用,列表中有 2 项,但 notifydatasetchanged 没有任何效果。我做错了什么?这是我的代码。适配器类
class FaqsAdapter : RecyclerView.Adapter<FaqsAdapter.MyViewHolder>() {
lateinit var binding: FaqItemBinding
lateinit var listFaqs: List<ModelFaqs>
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): MyViewHolder {
val inflater = LayoutInflater.from(parent.context)
binding = DataBindingUtil.inflate(inflater, R.layout.faq_item, parent, false)
return MyViewHolder(binding)
}
override fun getItemCount(): Int {
return if (::listFaqs.isInitialized) listFaqs.size else 0
}
override fun onBindViewHolder(holder: MyViewHolder, position: Int) {
holder.bind(listFaqs[position])
}
fun updateList(faqs: List<ModelFaqs>) {
this.listFaqs = faqs //this …Run Code Online (Sandbox Code Playgroud) android android-recyclerview android-databinding android-mvvm