我在图书馆appcompat_v7
遇到了麻烦路径上有错误
RES /值-V21 / styles_base.xml
并且第75行显示错误 - 低于75到78:
<style name="Base.Widget.AppCompat.ActionButton" parent="android:Widget.Material.ActionButton"> </style>
在控制台:
home / user / workspace / appcompat_v7 / res / values-v21 / themes_base.xml:156:错误:错误:找不到与给定名称匹配的资源:attr'android:colorControlNormal'。
和几个错误类似只改变'android:*'
我该如何解决这个问题?
答案 0 :(得分:4)
好的,我不确定,如果这是一个真正的&#34;解决方案&#34;但这是我的理论和我所做的:
更新&#34; Android支持库&#34;版本21,我得到了类似的错误。看来,我的IntelliJ没有正确更新模块中的资源,这指向了appcompat的ressources目录。
此外,我有一些小部件和代码直接指向那些资源中的drawables。
但是在Android支持库的第21版中,Google放弃了对Holo主题的支持!
因此,编译器抱怨找不到我的主题所依赖的资源。
说实话,我不确定我是如何做出这项工作的。我想,我用过一些重新启动和缓存清空等。将资源复制到我的项目文件夹等。当我的应用程序最终启动时,它看起来不同!当然,它有 Material 主题而不是 Holo 主题。
并非所有事情都幸存下来。例如。动作栏是黑色(标准)而不是绿色(我的主题)。所以我试着回到旧版appcompat而不是将我的整个应用程序迁移到Material。
既然你问我解决方案,我就会发布我所做的事情&#34;降级&#34; appcompat v20。
appcompat-v7-20.0.0.aar
libs\appcompat\
(它是一个zip文件)中的所有文件解压缩到appcompat
目录
android-support-v7-appcompat.jar
for v20 第6步是一个,我发现非常困难。我希望.aar文件中的classes.jar
为android-support-v7-appcompat.jar
,但它不是。{0}。我甚至都不知道,你可以从正确的版本中获取android-support-v7-appcompat.jar
,因为我在存储库中找不到它。我并不想从互联网上的某个地方下载#34;
我是&#34;幸运&#34;,它已经在我的git中使用了正确的版本。
现在我的应用已编译并正确查找。希望你也这样!
答案 1 :(得分:4)
在升级Eclipse并在工作区中导入“Android Support Library”后出现同样的问题。
我认为这是“降级到appcompat”的一个糟糕的解决方案,所以我试图找到另一种方式并找到它。 我的问题是我的AppCompat的“Project Build Target”设置为API lvl 19.所以这是一个问题:
-Eclipse没有为AppCompat加载API lvl 21的数据。
-Appcompat有Target API lvl 19,但试图为API lvl 21设置样式。
也许你有同样的问题,所以结帐有什么帮助我:
1
右键单击Appcompat project =&gt;属性=&gt; Android =&gt;检查你的标记在哪里,如果它没有在Android 5.0上设置 - 修复它并单击确定。
2
Project =&gt;清洁=&gt;设置“清除所有项目”=&gt;确定
P.S。对不起,如果我有错误 - 英语不是我的母语。
答案 2 :(得分:3)
home / user / workspace / appcompat_v7 / res / values-v21 /themes_base.xml:156:错误:错误:找不到与给定名称匹配的资源:attr&#39; android: colorControlNormal&#39;
我认为values-v21
代表api等级21,所以我更新到了android 5.0,它对我有用。
答案 3 :(得分:1)
我的解决方案更激进: 删除所有样式文件及其每个引用