3

ルートbuild.gradleファイルにこれがあります:

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.5.0'
    }
}

そしてアプリbuild.gradleファイルで:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 21
    buildToolsVersion "23.0.1"

    defaultConfig {
        applicationId "com.company.app"
        minSdkVersion 14
        targetSdkVersion 21
        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:22.2.0'
    //more third-party libraries
}

そして、これは私のレイアウトです:

<layout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools">

    <data>

        <variable
            name="user"
            type="com.company.app.models.LoginCredentials"/>
    </data>

    <EditText
        android:layout_width="match_parent"
        android:layout_height="55dp"
        android:text="@{user.username}"/>

    <!-- More layouts and widgets -->
</layout>

しかし、私はこのエラーが発生します:

エラー:(82, 35) リソース タイプが指定されていません (値 '@{user.username}' の 'text' で)。

私は入れようとしました:

dataBinding { 
    enabled = true 
}

しかし、私はこの別のエラーを受け取ります:

エラー: com.android.databinding:library:1.0-rc3 が見つかりませんでした。

どのようにできるのか?Android Studio を v1.5.1 にアップデートしました。

4

2 に答える 2

2

実際compileSdkVersion 21に問題を作成しています。UPGRADEDバージョンを使用する必要があります。

使用する必要があります

compileSdkVersion 23 
buildToolsVersion "23.0.1" 

&

targetSdkVersion 23  

含める必要がありますdataBinding.enabled = true

于 2016-01-14T08:50:12.623 に答える
0
  1. このようにbuild.gradleに追加classpath "com.android.databinding:dataBinder:1.0-rc1"します

    buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:1.5.0' classpath "com.android.databinding:dataBinder:1.0-rc1" } }

  2. @IntelliJAmiya の以前のコメントで述べたように、build.gradle を変更して追加し、gradle は次のapply plugin: 'com.android.databinding'ようになります。

    apply plugin: 'com.android.application'
    apply plugin: 'com.android.databinding'  
     android {
        compileSdkVersion 23
        buildToolsVersion "23.0.1"
    
    
      defaultConfig {
            applicationId "com.company.app"
            minSdkVersion 14
            targetSdkVersion 21
            versionCode 1
            versionName "1.0"
        }
        buildTypes {
            release {
                minifyEnabled false
                proguardFiles getDefaultProguardFile('proguard-android.txt'),   'proguard-rules.pro'
            }
        }
    }
     dataBinding { 
            enabled = true 
        }
        dependencies {
            compile fileTree(dir: 'libs', include: ['*.jar'])
            testCompile 'junit:junit:4.12'
            compile 'com.android.support:appcompat-v7:23.1.0'
            //more third-party libraries
        }
    `
    
于 2016-01-14T08:46:05.573 に答える