我正在尝试从Material Components Theme更改样式属性(例如const cardinalDictionary = {
'zero': 0,
'one': 1,
...,
'twenty',
...,
'hundred': 100,
'thousand': 1000,
};
,colorPrimaryVariant
等),但出现以下错误:
colorOnSecondary
这是我的主题:
Android resource linking failed
Output: C:\...\app\build\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml:3835: error: style attribute 'attr/colorPrimaryVariant (aka com.sample.app:attr/colorPrimaryVariant)' not found.
C:\...\app\build\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml:3836: error: style attribute 'attr/colorOnPrimary (aka com.sample.app:attr/colorOnPrimary)' not found.
C:\...\app\build\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml:3839: error: style attribute 'attr/colorSecondaryVariant (aka com.sample.app:attr/colorSecondaryVariant)' not found.
C:\...\app\build\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml:3840: error: style attribute 'attr/colorOnSecondary (aka com.sample.app:attr/colorOnSecondary)' not found.
error: failed linking references.
如果我不添加四个受影响的属性,则一切正常。我的minSdkVersion是16,compileSdkVersion和targetSdkVersion是28。我也尝试使用Bridge主题,但是遇到了同样的错误。我仔细检查了我的依赖关系,一切似乎都正确。我想念什么?
答案 0 :(得分:19)
1.1.0 (当前为Alpha版)已解决了此问题:
implementation 'com.google.android.material:material:1.1.0-alpha05'
答案 1 :(得分:1)
我刚刚检查了the documentation和您使用的物品。似乎它仍未添加到Theme.MaterialComponents
中,也不适用于该主题。
(也通过使用Theme.MaterialComponents
也获得了“找不到错误”)
有趣的是,我认为它应该与parent="Theme.AppCompat"
一起使用,因为他们说这是测试以了解其工作原理:
您也可以逐步测试新的材料组件而无需 更改您的应用主题。 这使您可以保留现有布局 外观和行为相同,同时将新组件引入 您的布局一次。
阅读: AppCompat Themes