JetPack的优势:
- 加速开发
- 消除样板代码(避免过多地写重复的样板代码)
- 构建高质量的应用(减少崩溃和内存泄漏)
jetPack其实是一些库的集合,可组合使用,也可单独使用
数据绑定库:将数据与xml页面绑定
- gradle配置,支持dataBinding
在工程的gradle.properties中配置
- 创建需要的model
- xml文件中导入model(选中根布局,alt+Enter),使用@{…}填充内容,可以声明default。操作后如图
重新Build项目,重新Build项目,重新Build项目(会在app/build/generated/data_binding_..../debug/dataBindingGen.../out/com.....databinding目录下生成需要的Binding类)
- 在UI界面,调用DataBindingUtil的setContentView来绑定数据
- 可以通过binding来对数据进行修改
参与者有:
UI,xml,model,binding
关系是:
xml引入model,使用model的值。
UI中代码获取绑定的binding,使用binding来设置model的值
参考:http://www.imooc.com/article/286709
https://juejin.im/post/5b02cf8c6fb9a07aa632146d
与Fragment进行绑定
- 创建需要的model
- 在xml中导入model
重新Build项目,重新Build项目,重新Build项目
- 在onCreateView中绑定数据,需要使用的是inflate方法
与Adapter进行绑定
较为复杂,看看再记