我已经在styles.xml
中手动赋值给了item看起来像下面
<item name="middleBarArrowSize">16.0dip</item>
<item name="topBottomBarArrowSize">11.309998dip</item>
<item name="disableChildrenWhenDisabled">true</item>
也在某些地方
<item name="cardBackgroundColor">@color/cardview_light_background</item>
<item name="cardBackgroundColor">@color/cardview_light_background</item>
但是在colors.xml中,我声明了像
这样的值<color name="cardview_dark_background">#ff202020</color>
<color name="cardview_light_background">#fffafafa</color>
<color name="cardview_shadow_end_color">#03000000</color>
<color name="cardview_shadow_start_color">#37000000</color>
<color name="common_action_bar_splitter">#ffd2d2d2</color>
截图如下
我搜索了很多网站
No resource found that matches the given name: attr 'homeHint'
No resource found that matches the given name: attr 'colorPrimary'
No resource found that matches the given name: attr 'android:tabLayout'
Execution failed app:processDebugResources Android Studio
但没有对我有帮助
任何人都会建议我为什么会收到此错误以及此
的解决方案是什么答案 0 :(得分:1)
这是有效的原因:
<item name="cardBackgroundColor">@color/cardview_light_background</item>
但这并不是:
<item name="middleBarArrowSize">16.0dip</item>
是因为在android.support.v7.cardview
包中声明了cardBackgroundColor
,您的项目将依赖于该包。如果你打开,这很容易确认:
<sdk_path>/extras/android/support/v7/cardview/res/values/attrs.xml
除此之外,您还可以找到:
<resources>
<declare-styleable name="CardView">
<!-- Background color for CardView. -->
<attr name="cardBackgroundColor" format="color" />
...
</declare-styleable>
</resources>
根据您提供的代码,middleBarArrowSize
尚未在任何地方宣布。要使用自定义属性,必须先声明它(与上面类似)。
此过程解释为in the docs here,结果如下:
<强> RES /值/ attrs.xml 强>
<resources>
<declare-styleable name="MyCustomAttributes">
<attr name="middleBarArrowSize" format="dimension" />
<attr name="topBottomBarArrowSize" format="dimension" />
<attr name="disableChildrenWhenDisabled" format="boolean" />
<!-- add more here -->
</declare-styleable>
</resources>
完成后,您应该能够在项目中使用声明的属性。
但是在colors.xml中我声明了像(...)
这样的值
属性和颜色之间存在差异。颜色是值,而属性是您可以为分配值(即颜色或字符串等)。
答案 1 :(得分:1)
如果找不到某些资源,例如
compile "com.android.support:cardview-v7:23.2.0"
目前,您首先检查values-v24
和build.gradle
dependencies {
compile "com.android.support:support-v4:24.2.0"
compile "com.android.support:support-v13:24.2.0"
compile "com.android.support:cardview-v7:24.2.0"
}
如果您的文件名版本与dependencies api
版本相同,则可以轻松解决此类错误。
例如
com.android.support:cardview-v7:24.2.0
适用于values-v24
res文件夹