[英]Does livedata observer and databinding listener in xml file get triggered in parallel?
[英]LiveData or DataBinding Observer
我在我的 Android 应用程序上使用 MVVM,在 ViewModel 上我有很多观察者(来自数据绑定),比如ObservableBoolean
、 ObservableField
,我读到我可以使用LiveData/MutableLiveData
代替这个观察者......有什么区别? 我可以用LiveData/MutableLiveData
替换我所有的数据绑定观察者吗?
例如:
代替:
val loading: ObservableBoolean = ObservableBoolean()
经过:
val loading: MutableLiveData<Boolean> = MutableLiveData()
取决于您从哪里读取数据。
在我们当前的项目中,我们直接从RoomDB阅读。 RoomDB具有发送回liveData对象的能力。
如果您在检索后进行任何修改,则通常使用可变数据
很多次都过去了,我学到了很多东西......用LiveData替换所有Data Binding Observable,因为LiveData尊重Activity生命周期,可以在JetPack lib中使用,比如Room,Coroutine ......
如果您的目标只是根据视图模型中原始数据类型中数据的更改来更改 xml 中视图的基本属性,那么使用数据绑定很简单。 对于其余情况,实时数据是唯一的方法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.