找不到与给定名称匹配的资源:attr'colorPrimaryDark'

dec*_*iar 2 java android gradle android-layout

〜/ myApp/app/build/intermediates/res/merged/debug/values/values.xml:102:错误:错误:找不到与给定名称匹配的资源:attr'colorAccent'.

而且colorPrimary,和colorPrimaryDark.这是一个简单的项目,目标是21+版本.

对于后代,请看我的values/:

价值观/ styles.xml

<resources>
        <style name="AppTheme" parent="android:Theme.Material">
                <item name="colorPrimary">@color/primary</item>
                <item name="colorPrimaryDark">@color/primary_dark</item>
                <item name="colorAccent">@color/accent</item>
        </style>
</resources>
Run Code Online (Sandbox Code Playgroud)

值/ colors.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
        <color name="primary">#3F51B5</color>
        <color name="primary_dark">#303F9F</color>
        <color name="accent">#FF4081</color>
</resources>
Run Code Online (Sandbox Code Playgroud)

的build.gradle

apply plugin: 'com.android.application'

android {
    compileSdkVersion 25
    buildToolsVersion "25.0.3"
    defaultConfig {
        applicationId "com.dcousens.myapplication"
        minSdkVersion 21
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
    }

    .. snip
}
Run Code Online (Sandbox Code Playgroud)

这个名称下有很多问题,但是它们的分辨率compileSdkVersion至少达到了21个.这已经完成了,错误仍然存​​在.

ian*_*ake 5

如果您使用的是android:Theme.Material,而不是建议的Theme.AppCompat,则必须android:在每个项目上使用前缀.

<style name="AppTheme" parent="android:Theme.Material">
  <item name="android:colorPrimary">@color/primary</item>
  <item name="android:colorPrimaryDark">@color/primary_dark</item>
  <item name="android:colorAccent">@color/accent</item>
</style>
Run Code Online (Sandbox Code Playgroud)

由于API 21和AppCompat通过API 24继续添加修复程序,因此使用AppCompatActivityTheme.AppCompat推荐用于所有API级别,因为事情不断变化.