版权声明:本文为博主原创文章,欢迎大家转载!
但是转载请标明出处: https://blog.csdn.net/t000818/article/details/84667772,本文出自:【唐宏宇的博客】
Data Binding 库是可以让我们使用声明性格式而不是以编程方式将布局中的UI组件绑定到应用中。
下面将会介绍如何在开发环境中集成使用Data Binding库,包含在Android Studio中的编写Data Binding代码。
Data Binding库提供了高度的灵活性和兼容性 ,因此可以将其用于Android 4.0(API级别14)或更高版本的设备。
建议在项目中使用最新的Gradle Android插件。但只有1.5.0版本及更高版本支持Data Binding。有关更多信息,请参阅如何更新Gradle的Android插件。
在开始使用Data Binding之前,请先从Android SDK管理器里的Support Repository下载支持库。有关更多信息,请参阅更新IDE和SDK工具。
要将应用程序配置为使用数据绑定,请将dataBinding元素添加到app模块中的build.gradle文件中,如以下示例所示:
android {
...
dataBinding {
enabled = true
}
}
注意: 即使App模块不直接使用Data Binding, 也必须为依赖于使用Data Binding的库的App模块,配置Data Binding。
Android Studio支持许多用于Data Binding代码的编辑功能。例如,它支持Data Binding表达式的以下功能:
布局编辑器中的“预览”窗格显示Data Binding定表达式的默认值。例如,“预览”窗格在以下示例中声明的TextView小部件上显示my_default值:
如果只需要在项目的设计阶段显示默认值,则可以使用工具属性而不是默认表达式值,如“tools属性参考”中所述。
android gradle 插件版本 3.1.0-alpha06 包含一个 用于生成绑定类的新版Data Binding编译器。新的编译器以增量方式创建绑定类, 这在大多数情况下加快了生成过程。若要了解有关绑定类的详细信息, 请参阅生成的绑定类.
以前版本的Data Binding编译器在编译代码的同一步骤中生成绑定类。如果托管代码无法编译, 您可能会收到多个错误, 报告找不到绑定类。新的Data Binding编译器通过在编译器生成应用之前生成绑定类来防止这些错误.
要启用新的数据绑定编译器, 请将以下选项添加到格拉特. 属性文件中:
android.databinding.enableV2=true
还可以通过添加以下参数在分级命令中启用新的编译器:
-Pandroid.databinding.enableV2=true
注意: 在android 3.1版插件中,新的Data Binding编译器不会向后兼容。你需要在启用此功能以实现增量编译,生成所有绑定类 。但是, android 插件3.2 版中的新编译器与以前版本生成的绑定类兼容。默认情况下3.2 版会自动启用新编译器.
当启用新的Data Binding编译器时, 将导致App会有以下变更: