DataBinding(15)-自定义Binding类的名称
2023-08-30 本文已影响0人
代码多哥
默认情况下,Binding类是根据布局文件的名称生成的,以大写字母开头,删除下划线(_),以大写字母开头,并加上binding后缀。例如,布局文件contact_item.xml生成ContactItemBinding类。该类被放置在模块包下的databinding包中。例如,如果模块包是com.example.my.app,则绑定类被放置在com.example.my.app.databinding包中。
通过调整数据元素的class属性,可以重命名Binding类或将其放置在不同的包中。例如,以下布局在当前模块的databinding包中生成ContactItemBinding类:
<data class="ContactItem">
...
</data>
通过在类名前面加一个句点,可以在不同的包中生成绑定类。以下示例在模块包中生成绑定类:
<data class=".ContactItem">
...
</data>
您还可以在使用完整的包名称。以下示例在com.example包中创建ContactItem绑定类:
<data class="com.example.ContactItem">
...
</data>
译者注释
- 默认情况,生成的类名是com.example.my.app.databing.ContactItemBinding
- 第一种情况,生成的类名是com.example.my.app.databing.ContactItem
- 第二种情况,生成的类名是com.example.my.app.ContactItem
- 第三种情况,生成的类名是com.example.my.ContactItem
关于生成的class就这些知识点,另外生成的class的目录在模块对应的的build/generated/data_binding_base_class_source_out 和build/generated/source/kapt/debug