首先在app模块的build.gradle中加入databinding的配置。
android {
buildFeatures {
dataBinding true
}
}
然后使用[Alt + 回车]快捷键将普通的xml布局转换成databinding的xml布局,在data标签中可以定义绑定的变量,在控件中可以直接只用这些变量给=""的内容赋值,你还可以使用一些诸如if判断这样的代码。
<layout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<data>
<variable
name="m"
type="com.example.vm.LoginViewModel" />
<variable
name="v"
type="com.example.ui.fragment.LoginFragment" />
</data>
<Button app:click="@{v}"/>
<EditText android:text="@{m.username}"/>
</layout>