每个RecyclerView.ViewHolder一个ViewModel或(等效)

时间:2018-11-19 09:07:16

标签: android android-recyclerview kotlin android-lifecycle

关于如何使RecyclerView变得简单的教程很多,但是现在我的ViewHolder逻辑变得越来越简单。 理想情况下,每个MyItemViewModel会有一个ViewHolder的实例,因此我可以分离与UI相关的助手。这有可能吗?

我尝试像这样夸大并传递binding

(在RecyclerView.Adapter.onCreateViewHolder中)

val binding = MyViewBinding.inflate(
  LayoutInflater.from(parent.context), parent, false)
return MyViewHolder(binding)

但是当我稍后访问通过binding.viewModel调用的MyViewHolder.setItem(item: Item)中的RecyclerView.Adapter.onBindViewHolder时,它始终是null

有帮助吗?我是否可以/应该Fragment / Activity虚化一个ItemViewHolder),以便使用ViewModelProviders?我应该使用类似于ViewModel的东西吗?

0 个答案:

没有答案