Android的Databinding-普通绑定

1. 使用ActivityBasicBinding binding = DataBindingUtil.setContentView(this, R.layout.main);代替之前使用的setContentView
2. 创建一个pojo的数据类,例如User
3. main.xml这个布局添加,User就是数据对象

<data>
<import type="com.liangfeizc.databinding.model.User" />
<variable name="user" type="User" />
</data>

4. 布局中需要读取User的属性值使用{user.name}读取。
5. 设置值的时候创建User对象,并使用ActivityBasicBinding的对象调用setUser方法,创建ActivityBasicBinding对象的时候就会自动生成setUser方法。


6. 使用类方法,在xml的data节点导入:

1 <import type="com.liangfeizc.databindingsamples.utils.MyStringUtils" />

7. 使用办法

1 <TextView
2     android:layout_width="wrap_content"
3     android:layout_height="wrap_content"
4     android:text="@{MyStringUtils.capitalize(user.firstName)}" />

 

8. 类型别名,避开类名相同的情况

1 <import type="com.example.home.data.User" />
2 <import type="com.examle.detail.data.User" alias="DetailUser" />
3 <variable name="user" type="DetailUser" />

 

9. 三目运算符简写法等价于:

1 android:text="@{user.displayName ?? user.lastName}"

 

 

 

 

本节参考代码。

posted on 2017-08-18 10:39  lee0oo0  阅读(249)  评论(0编辑  收藏  举报