Google 引入了新的架构组件,包括 ViewModels、LiveData 等。
我尝试在不使用 DataBinding的情况下将 RecycleView 项目和新 ViewModel 放在一起。
实际上,我确实有非常简单的事情,并且在我的脑海中有一种算法,但不知道如何实现它。
每个 RecyclerView 项目都包含一个可展开的列表。因此,如果用户单击显示更多/显示更少按钮,则应切换内部列表的可见性。
我的想法:
我需要在每个项目的 ViewHolder 中注入一个 ViewModel。
我会订阅关于内部列表可见性的 LiveData-Changes。
在显示更多/更少点击时,我会调用 viewModel.showMoreClicked 并更改可见性。
也许您有一个链接或正确的解决方案(以及没有数据绑定的解决方案)。
我也可以想象,我的做法是错误的。