android - 无法更改 actionBar 分隔线的颜色

标签 android intellij-idea android-actionbar

我尝试更改操作栏分隔线的颜色,但没有任何效果。我使用 Android 支持库 v7 来支持旧设备和自定义样式,并且我还更改了所有可绘制的操作栏,但什么也没发生!

<resources>
    <style name="MyTheme" parent="Theme.AppCompat">
        <item name="actionBarStyle">@style/MyActionBar</item>
    </style>

    <style name="MyActionBar" parent = "Widget.AppCompat.ActionBar">
        <item name="background">@drawable/my_action_bar</item>
    </style>
</resources>

我的 ide 在布局中显示了奇怪的错误,为什么我会收到此错误?这不是颜色值

java.lang.NumberFormatException: Color value '@drawable/abs__ab_transparent_dark_holo' must start with #

解决方案:如果用于 api level >= 14 ,则需要添加 android 命名空间。也许这会对某人有所帮助。

最佳答案

这是因为“分隔符”是一个图像。它被硬编码在 Holo 主题资源中。

查看platforms/android-19/data/res/drawable-xxhdpi/ab_transparent_dark_holo.9.png

此处声明了 Holo Dark 的样式。

<style name="Widget.Holo.ActionBar" parent="Widget.ActionBar">
        ...
        <item name="android:background">@android:drawable/ab_transparent_dark_holo</item>
        ...
</style>

这是一个背景。您将需要更改图像中的颜色并替换栏的背景。 不同的分辨率还需要不同的尺寸。

关于android - 无法更改 actionBar 分隔线的颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18945397/

相关文章:

android - 无法以任何方式在工具栏顶部显示 actionMode

android - 在滚动事件期间更改操作栏 alpha

android - 将带时间的字符串转换为分钟

java - 使用 IntelliJ 将 .class 文件导入 .jsp 文件

android - 如何在 Android 设备上安装受信任的 CA 证书?

java - 为什么类型推断在这里失败了?

java - 如何使用 Java EE 7 和 Glassfish 4 在 IntelliJ IDEA Community Edition 中创建 Java Servlet 应用程序?

java - 是否可以将 Google Maps V2 MapFragment 放入 ActionBar 选项卡中?

Android - 谷歌地图显示位置名称而不是经度和纬度

android - 特定应用的音乐设置,如何做到这一点?