2017-05-15 75 views
2

~/myApp/app/build/intermediates/res/merged/debug/values/values.xml:102: error: Error: No resource found that matches the given name: attr 'colorAccent'.找不到与给定名称匹配的资源:attr'colorPrimaryDark'

并且对于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 这已经完成,但错误仍然存​​在。

回答

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> 

使用AppCompatActivityTheme.AppCompat建议对所有API水平事情以来持续API 21来改变和程序兼容性继续向上穿过甚至API添加修复24

相关问题