使用com.android.support时找不到attr/colorError错误:recyclerview-v7:26.0.0-beta2

Rob*_*bin 64 android gradle android-recyclerview

我正在使用Android Studio 3.0 Canary 4.我导入了回收站视图库.然后它出现attr/colorError not found消息.这是app build.gradle:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 25
    buildToolsVersion "25.0.3"
    defaultConfig {
        applicationId "com.robyn.myapplication"
        minSdkVersion 19
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    androidTestImplementation('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    testImplementation 'junit:junit:4.12'
    implementation 'com.android.support:recyclerview-v7:26.0.0-beta2'
    implementation 'com.android.support:appcompat-v7:26.0.0-beta2'
}
Run Code Online (Sandbox Code Playgroud)

每当我添加两个库实现'com.android.support:recyclerview-v7:26.0.0-beta2'并实现'com.android.support:appcompat-v7:26.0.0-beta2'时,它会出现此错误消息: 在此输入图像描述

我试过干净并重建,错误信息仍然存在.我检查了res/values/colors,颜色值在那里.为什么我会出现这种颜色错误?如果我想使用recycler视图,我应该导入哪个版本的库?

Mut*_*ran 130

更改以下细节,它将正常工作,

compileSdkVersion 26
buildToolsVersion "26.0.0-beta2"
Run Code Online (Sandbox Code Playgroud)

  • 这次真是万分感谢.我们开发了一个应用程序,我们每3个月左右更新一次,这非常令人沮丧 - 每次我们打开Android Studio时 - 在进行任何开发工作之前,都有大量的更新,补丁和"快速修正"可供下载和应用.不能说XCode更好,但所有不兼容的Swift版本.哎呀,抱歉突然爆发:)谢谢分享这个问题的解决方案! (47认同)
  • 我怎么能在一百万左右的时间里赞扬弗雷德里克的评论 (13认同)

vir*_* us 34

同时升级compileSDKVersionbuildToolsVersion26(这是25)解决了该问题对我来说:

compileSdkVersion 26
buildToolsVersion '26.0.2'
...
dependencies {
    ...
    compile 'com.android.support:appcompat-v7:26.0.2'

}
Run Code Online (Sandbox Code Playgroud)

通常,确保所有版本保持一致(编译,构建,appcompat库).

这是为了确保运行时的编译和稳定性(如果lint找到不同的支持库版本,也可以看到关于后者的lint警告)