我为Android库项目启用dataBinding后立即生成错误

我为Android库项目启用dataBinding后立即生成错误,第1张

概述我为我的库项目启用dataBinding后,立即收到构建错误:AAPT:未指定资源类型(在“文本”中,值为“@{user.name}”)如果我为应用程序模块启用了dataBinding,它将正常工作.但是,如果我为我的lib项目启用dataBinding,则会收到上述错误.应用程序模块的build.gradleapplyplugin:'co

我为我的库项目启用dataBinding后,立即收到构建错误:

AAPT:未指定资源类型(在“文本”中,值为“ @ {user.name}”)

如果我为应用程序模块启用了dataBinding,它将正常工作.
但是,如果我为我的lib项目启用dataBinding,则会收到上述错误.

应用程序模块的build.gradle

apply plugin: 'com.androID.application'androID {   compileSdkVersion 23   buildToolsversion "23.0.2"dataBinding{    enabled true}defaultConfig {    applicationID "xyz.databindingtrial"    minSdkVersion 19    targetSdkVersion 23    versionCode 1    versionname "1.0"}buildTypes {    release {        MinifyEnabled false        proguardfiles getDefaultProguardfile('proguard-androID.txt'), 'proguard-rules.pro'    }}}dependencIEs {  compile filetree(dir: 'libs', include: ['*.jar'])  testCompile 'junit:junit:4.12'  compile 'com.androID.support:appcompat-v7:23.3.0'  compile project(path: ':librarytrial')}

lib项目的build.gradle

apply plugin: 'com.androID.library'androID {  compileSdkVersion 23  buildToolsversion "23.0.2"dataBinding{    enabled true}defaultConfig {    minSdkVersion 19    targetSdkVersion 23    versionCode 1    versionname "1.0"}buildTypes {    release {        MinifyEnabled false        proguardfiles getDefaultProguardfile('proguard-androID.txt'), 'proguard-rules.pro'    }}}dependencIEs {  compile filetree(dir: 'libs', include: ['*.jar'])  testCompile 'junit:junit:4.12'  compile 'com.androID.support:appcompat-v7:23.3.0'}

布局文件:

<data >    <variable        name="user"        type="xyz.databindingtrial.model.User"/></data><relativeLayout    xmlns:tools="http://schemas.androID.com/tools"    androID:layout_wIDth="match_parent"    androID:layout_height="match_parent"    androID:paddingBottom="@dimen/activity_vertical_margin"    androID:paddingleft="@dimen/activity_horizontal_margin"    androID:paddingRight="@dimen/activity_horizontal_margin"    androID:paddingtop="@dimen/activity_vertical_margin"    tools:context="xyz.databindingtrial.MainActivity">    <TextVIEw        androID:layout_wIDth="wrap_content"        androID:layout_height="wrap_content"        androID:text="@{user.name}"/></relativeLayout>

活动代码

@OverrIDeprotected voID onCreate(Bundle savedInstanceState) {  super.onCreate(savedInstanceState);  UserTrackingBinding binding = DataBindingUtil.setContentVIEw(this, R.layout.activity_main);  User user = new User("Test");  binding.setUser(user);

}

用户模型

public class User extends BaSEObservable { private final String name; public User(String name){ this.name = name; } @Bindable public String getname() {  return name; }}

dataBinding是否不适用于库项目?如果可以,我的设置有什么问题?

谢谢

解决方法:

它确实适用于库项目,但是依赖于使用数据绑定的库的任何应用程序都必须启用数据绑定,即使他们不使用它.

总结

以上是内存溢出为你收集整理的我为Android库项目启用dataBinding后立即生成错误全部内容,希望文章能够帮你解决我为Android库项目启用dataBinding后立即生成错误所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1120723.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存