LiveData 和 MVVM 模式
LiveData and MVVM pattern
这是 "conceptual" 关于 android 上的 LiveData 和 MVVM 模式的更多问题:我已经开始编写一个应用程序,如果我理解的话,屏幕上有多个按钮用于不同的操作当用户单击其中一个按钮时正确,ViewModel 应该处理它,然后通过 LiveData 更新 ui (Activity / fragment) ;问题是,对于 4 个按钮,我需要实现 4 个不同的 LiveData 实例才能让 activity 订阅,还有其他解决方案吗?
到目前为止,我考虑过创建状态数据 class 并在单击按钮时更新(然后将实例提供给 ui 进行渲染)这样可以吗?但是在 activity 中你又遇到了一个问题,你必须检查状态 class 的每个属性并相应地更新 ui,那么在我的情况下你会怎么做?
您需要的可能是 sealed class
定义您的不同状态。我认为 this medium 文章完全符合您的要求,并且很好地解释了如何使用密封的 class 来实现这一目的。希望你会发现它有用。
这是 "conceptual" 关于 android 上的 LiveData 和 MVVM 模式的更多问题:我已经开始编写一个应用程序,如果我理解的话,屏幕上有多个按钮用于不同的操作当用户单击其中一个按钮时正确,ViewModel 应该处理它,然后通过 LiveData 更新 ui (Activity / fragment) ;问题是,对于 4 个按钮,我需要实现 4 个不同的 LiveData 实例才能让 activity 订阅,还有其他解决方案吗? 到目前为止,我考虑过创建状态数据 class 并在单击按钮时更新(然后将实例提供给 ui 进行渲染)这样可以吗?但是在 activity 中你又遇到了一个问题,你必须检查状态 class 的每个属性并相应地更新 ui,那么在我的情况下你会怎么做?
您需要的可能是 sealed class
定义您的不同状态。我认为 this medium 文章完全符合您的要求,并且很好地解释了如何使用密封的 class 来实现这一目的。希望你会发现它有用。