给自己复习
首先在appbuild中打开数据绑定
dataBinding { enabled = true } 在布局中按enter alt 引入绑定元素
<?xml version="1.0" encoding="utf-8"?> <layout xmlns:android="http://schemas.android.com/apk/res/android"> <data> <variable name="boy" type="com.kotlin.study.mykotlin.android.jetpack.databinding.Boy" /> <variable name="onClickListener" type="android.view.View.OnClickListener" /> <variable name="onClickListener1" type="android.view.View.OnClickListener" /> </data> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@{String.valueOf(boy.sex)}" /> <Button android:id="@+id/na_btn" android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="@{onClickListener}" android:text="点我改编boy的名字" /> <Button android:id="@+id/nb_btn" android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="@{onClickListener1}" android:text="点我改编boy的名字" /> </LinearLayout> </layout>
在text或者其他地方使用
单向数据绑定@{user.name}
双向数据绑定@={user.name} 双向数据绑定 元素要是可观察类型 如 ObservableField<String>
在activity设置值 binding.user = user