【问题标题】:error: expected color but got (raw string) color/gray错误:预期的颜色,但得到(原始字符串)颜色/灰色
【发布时间】:2018-04-14 20:07:38
【问题描述】:

我已经切换到 android studio 3。在我修复了很多问题之后,我得到了这个错误:

color/colorPrimary 但我出现了这个错误:Error:(87, 5) error: expected color but got (raw string) color/gray

【问题讨论】:

  • 即使问题不在颜色上,我也遇到了这个错误。我有<item name="android:background">null</item> 没有@ 符号。

标签: android android-studio styles android-studio-3.0


【解决方案1】:

颜色值应该是hex 颜色代码,如#A5D3F4 或带有@ 符号的颜色参考,如@color/colorPrimary。在使用这些参考之前,您必须创建像res/values/color.xml 这样的资源。

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <color name="colorPrimary">#6200EE</color>
    <color name="colorPrimaryDark">#3700B3</color>
    <color name="colorAccent">#03DAC5</color>
    <color name="LabelColor_text_50">#FFFFFF</color>
    <color name="ValueColor_text_50">#333322</color>
    <color name="LabelColor_bg_50">#A5D3F4</color>
    <color name="ValueColor_bg_50">#E6EEF4</color>
</resources>

并将这些名称用作&lt;item name="someName"&gt;@color/LabelColor_text_50&lt;/item&gt;

【讨论】:

    【解决方案2】:

    您忘记在color/colorPrimary 之前添加@

    改成 @color/colorPrimary

    示例代码

     <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
            <!-- Customize your theme here. -->
            <item name="colorPrimary">@color/colorPrimary</item>
            <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
            <item name="colorAccent">@color/colorAccent</item>
    
        </style>
    

    【讨论】:

    • 看起来是完美的答案。
    • 根据此页面developer.android.com/studio/build/… 迁移到 Android Studio 3 需要删除它们。我猜那是 OP 所指的。
    • @dhesse 删除什么?你可以解释吗?我有同样的问题
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-28
    • 1970-01-01
    • 1970-01-01
    • 2016-10-16
    • 1970-01-01
    • 2014-04-25
    相关资源
    最近更新 更多