【发布时间】:2016-06-09 10:46:12
【问题描述】:
我正在尝试将适当的数据绑定功能添加到我的项目中,但由于某种原因它仍然失败。
build.gradle 文件如下所示:
apply plugin: 'com.android.application'
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'me.tatarka:gradle-retrolambda:3.2.5'
}
}
repositories {
mavenCentral()
}
apply plugin: 'com.android.application'
apply plugin: 'me.tatarka.retrolambda'
android {
compileSdkVersion 23
buildToolsVersion "24.0.0 rc4"
defaultConfig {
applicationId "boilerplate"
minSdkVersion 16
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
dataBinding {
enabled = true
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.4.0'
compile 'com.android.support:design:23.4.0'
compile 'io.reactivex:rxandroid:1.2.0'
compile 'io.reactivex:rxjava:1.1.5'
compile 'com.jakewharton.rxbinding:rxbinding:0.4.0'
}
布局文件如下所示:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<data>
<variable name="user" type="boilerplate.UserModel"/>
</data>
<Button android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Test"
android:id="@+id/btn2"
android:onClick="OnBtnClick7"
android:layout_below="@+id/editText3"
android:layout_alignRight="@+id/editText3"
android:layout_alignEnd="@+id/editText3"/>
<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:inputType="textPersonName"
android:text="@{user.name}"
android:ems="10"
android:id="@+id/editText"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"/>
<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:inputType="textEmailAddress"
android:ems="10"
android:id="@+id/editText2"
android:layout_below="@+id/editText"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:text="@{user.email}"/>
<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:inputType="textPassword"
android:ems="10"
android:id="@+id/editText3"
android:layout_below="@+id/editText2"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:text="@{user.password}"/>
</LinearLayout>
但在尝试构建代码时出现以下错误:
Error:(23, 34) Gradle: No resource type specified (at 'text' with value '@{user.name}').
Error:(38, 35) Gradle: No resource type specified (at 'text' with value '@{user.email}').
Error:(49, 38) Gradle: No resource type specified (at 'text' with value '@{user.password}').
我应该怎么做才能解决这个问题?
【问题讨论】:
-
把这个
换成 -
这无济于事。我只是从代码中删除了我的公司扩展,然后忘记了从 graddle 中删除它。在现实生活中他们是一样的
-
这是你的主要包名 -boilerplate 吗?
-
尝试
clean项目和rebuild项目。
标签: android data-binding