Android:LiveData 与ViewModel的结合使用
LiveData 与ViewModel 是Android 新推出的组件框架,最近在项目中开始使用这两个组件。整体感觉还是挺方便使用的,做个简单的记录。
ViewModel 和LiveData的关系如下:(官方介绍图片)
1、 一个ViewModel 可以设置多个 LiveData 数据源, UI 界面通过设置观察者,监听数据变化。
2、LiveData 可以看成一个被观察者;
3、ViewModel 类似MVP 模式中的Presenter ,主要解耦相关的代码,如果ViewModel 业务太复杂可以添加辅助的Presenter类;
4、一个Fragment 或者 Activity 可以共享一个ViewModel,一个Activity 或者Fragment可以有多个ViewModel;
5、核心是要理解 观察者模式这种概念;
Demo:
官方demo地址: https://github.com/googlesamples/android-architecture-components
可以看里面的BasicSample
下面这篇文章写的挺好的,写的比较详细,推荐阅读