写在前面
上篇文章 Android Data Binding 系列(一) – 详细介绍与使用 介绍了 Data Binding
的基础及其用法,本文接上篇,结合DataBindingDemo 来学习下 Data Binding
的实现。
绑定实现
Activity在inflate layout时,通过DataBindingUtil来生成绑定,从代码看,是遍历contentView得到View数组对象,然后通过数据绑定library生成对应的Binding类,含Views、变量、listeners等。生成类位于 build/intermediates/classes/debug/...package.../databinding/xxx.java
下,具体如何生成这里暂不作深入。
绑定过程
- 首先,会在父类(ViewDataBinding)中实例化回调或Handler,用于之后的绑定操作;
1 | private static final boolean USE_CHOREOGRAPHER = SDK_INT >= 16; |