-
Data Binding 基本用途:
去掉Activity & Fragment 内的UI代码
XML变成UI的唯一真实来源
减少定义view id的主要用途
不会因没有id而crash
劣势:
报错信息不直接
IDE不够完善
没有重构支持
查看全部 -
设置数据的两种方法:1. setXXX;2. setVariable。
查看全部 -
UI/事件的绑定
查看全部 -
启用DataBinding。
查看全部 -
<include
layout="@layout/include_demo"
app:student="@{student}"/>查看全部 -
事件绑定:
方法引用
android:onClick="@{presenter.onClick}"
监听器绑定
Java中:void onClickXXX(Employee employee)
layout:android:onClick="@{()->presenter.onClickXXX(employee)} //l使用Lamanda语法
说明:其中presenter和employee未layout声明的变量。
查看全部 -
变量绑定:
1. layout中增加<data></data>标签,里面声明<variable name="变量名" type="类型"/>2. 代码中为Binding对象set变量名()参数。
查看全部 -
Gradle中使能Data Binding
查看全部 -
Data Binding的劣势
1. IDE支持不完善;2. 报错信息不直接,需要仔细查;
3. 不支持重构
查看全部 -
Data Binding主要优势
查看全部 -
Databinding的用途
查看全部 -
DataBinding会自动检查空指针,但是无法避免数组越界。
查看全部 -
DataBinding中的表达式应该尽可能简单,复杂的表达式可以放到ViewModel中。<br/>查看全部
-
空合并运算符:取第一个非空的结果。查看全部
-
DataDinding的表达式缺陷:
1. 无法调用当前所在类的对象(this);
2. 无法使用父类(super);
3. 无法创建对象(new);
4. 无法显示泛型调用。
查看全部
举报