有关使用LiveData的问题。
使用LiveData,您可以免费获得类似的东西:
listener/subscriber support;
lifeCycle awareness/management;
cross thread marshaling, etc.
几乎在任何情况下,我们都可以使用liveData作为在任何数据存储库到ui表示之间进行传递的机制。
但是,为了使用它,它必须引入一些所需的对象,就像您自己实现这些功能一样,必须要实现一些支持类。
想知道这可能是多少/多大的开销?难道只是被忽略了吗?
类似于进行搜索的情况,它可以使用LiveData,ui从存储库询问结果并观察liveData,存储库发布结果,并通知UI。
也可以在不使用liveData的情况下执行相同的操作(即,运行协程暂停函数以直接从存储库中获取)。
想知道LiveData是否会带来一些不必要的对象,或者带来的好处。
看到some post,但未找到何时应该使用LiveData或不使用LiveData的官方指南,或者LiveData不适合此类情况。也许根本就没有开销?
任何建议/想法?
[使用MVVM(模型视图ViewModel)时,有两个主要选项可将数据从ViewModel发送到视图(更新视图)。
如果您不想使XML布局复杂化,我们通常会使用基于Observer Design Pattern的LiveData。使用Kotlin Coroutines不会带来功能齐全的LiveData软件包。使用LiveData,您可以从另一个线程到主线程获得postValue,您可以从视图内部观察更改,然后...