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

时间:2017-05-15 02:43:03

标签: java android android-layout gradle

  

〜/对myApp /应用程序/生成/中间体/ RES /合并/调试/值/ values.xml:102:   错误:错误:找不到与给定名称匹配的资源:attr   ' colorAccent'

适用于colorPrimarycolorPrimaryDark。 这是一个简单的项目,目标是版本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>

值/ 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>

的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
}

这个名称下有很多问题,但是他们的决议是将compileSdkVersion提升到至少21。 这已经完成,错误仍然存​​在。

1 个答案:

答案 0 :(得分: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>

对于所有API级别,建议使用AppCompatActivityTheme.AppCompat,因为API 21和AppCompat通过API 24继续添加修补程序,因此情况不断变化。