LiveData
LiveData 相关文章
fundroid
Android GDE(谷歌开发者专家)| 互联网大厂移动端架构师
展开
-
【Android】在Kotlin中更优雅地使用LiveData
由于LiveData#Observer接口定义在Java中,且接受一个Nullable参数,导致其不能很好的兼容Kotlin的SAM以及NonNull等语法特性: viewModel.order.observe(viewLifecycleOwner, Observe { it?.let { applyCurrentOrder(it) } })Observe { .. }不能省略?.let显得非常多余现在使用lifecycle-livedata-ktx可以帮我们在Kotl.原创 2020-10-01 21:58:33 · 4200 阅读 · 1 评论 -
【Android】源码分析Activity如何实现LifecycleOwner
我们都知道Activity可作为LifecycleOwner为LiveData的使用提供条件,那么Activity是如何实现LifecycleOwner的呢?Activity虽然实现了LifecycleOwner接口,但是并没有实现相关处理,而是通过添加一个Fragment来代理Lifecycle的分发。这种通过Fragment代理Activity行为的设计在其他一些库也经常出现,相对来说更加无侵和优雅。SupportActivityActivity通过继承SupportActivity实现Life原创 2020-05-23 19:57:29 · 2928 阅读 · 0 评论 -
LiveData与RxJava比较
RxJava和LiveData都是在Android Architecture Components推荐使用的库,LiveData相对RxJava出现较晚,相当于轻量版的RxJava。两个库在功能角色上有重叠,所以我们通过与RxJava的对比,视图让大家了解LiveData的使用场景。LiveData无法处理异LiveData本身的设计理念比较简单,无法像RxJava那样在一个strem同时...原创 2020-03-05 18:13:03 · 5072 阅读 · 2 评论 -
MediatorLiveData的使用
MediatorLiveDarta的作用顾名思义,它可以作为中间人的角色监听其他LiveData例如有一个需求:希望在ExitText中输入文字的同时,显示文字个数class MainViewModel : ViewModel() { val message: MutableLiveData<String> = MutableLiveData() val count...原创 2020-02-24 23:59:50 · 10466 阅读 · 3 评论