1. 开发工具:本人学习使用的是Andriod Studio 2.2
2. 环境搭建:Andriod Studio 2.2只需在gradle中配置如下即可(其他低版本请百度参考)
apply plugin: 'com.android.application'
android {
dataBinding {
enabled = true
}
}
3. 使用:
与常规项目不同的是,xml布局中格式为:
<?xml version="1.0" encoding="utf-8"?>
<layout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<data>
<variable
name="presenter"
type="xxx.contract.LoginContract.Presenter"/>
<variable
name="viewModel"
type="xxx.viewmodle.MainViewModel"
/>
</data>
... 你自己的真正的布局...
</layout>
即布局最外层为layout标签, <variable>....</variable>用于控件的数据绑定,如text, img,click等等.
4. Acitivity 中DataBinding的获取:
ActivityMainBinding binding = DataBindingUtil.setContentView(this, R.layout.activity_main);
其中ActivityMainBinding是自动生成的,他的命名规则与你传入的layout名字有关,如传入的布局名称为:activity_main,则自动会生成对应的binding类ActivityMainBinding.
注:如果没有自动生成binding类,请查看你的布局是否如3中所述,最外层是由layout嵌套
网友评论