6

我想更改 ActionBar 下方橙色线的颜色。

http://s14.directupload.net/images/130911/3suejbj2.png

我已经尝试了一些东西,但到目前为止没有任何帮助。

我的 Galaxy S2 目前的主题是橙色主题。所以改变主题,也改变了路线。但是我不知道如何访问该行以更改颜色。

4

4 回答 4

12

您可以使用此代码来实现您的目的。

背景.xml

<?xml version="1.0" encoding="utf-8"?>
<layer-list
    xmlns:android="http://schemas.android.com/apk/res/android">
    <item>
        <shape android:shape="rectangle">
            <solid android:color="#ff0000" />
        </shape>
    </item>
    <item android:bottom="5dp">
        <shape android:shape="rectangle">
            <solid android:color="#ffffff" />
        </shape>
    </item>
</layer-list>

样式.xml

<resources>
    <style name="AppTheme" parent="android:Theme.Holo">
        <item name="android:actionBarStyle">@style/AppTheme.ActionBar</item>
        <item name="android:background">#ffffff</item>
        <item name="android:colorBackground">#ffffff</item>
    </style>
    <style name="AppTheme.ActionBar" parent="android:Widget.ActionBar">
        <item name="android:background">@drawable/background</item>
    </style>
</resources>

当您没有任何选项菜单(如相关图像显示)时,这些代码适用,如果您有选项菜单,则必须自定义选项菜单项背景。

如果您有以下代码的选项菜单是合适的:

<resources>
    <style name="AppTheme" parent="android:Theme.Holo.Light">
        <item name="android:actionBarStyle">@style/AppTheme.ActionBar</item>
        <item name="android:popupMenuStyle">@style/AppTheme.PopUpMenu</item>
    </style>
    <style name="AppTheme.ActionBar" parent="android:Widget.ActionBar">
        <item name="android:background">@drawable/background</item>
    </style>
    <style name="AppTheme.PopUpMenu" parent="android:Widget.Holo.Light.ListPopupWindow">
        <item name="android:popupBackground">@drawable/background</item>
    </style>
</resources>
于 2014-03-23T12:12:06.750 回答
4

有一种比这更简单的方法(Creating Bunch of Styles)。参考这个。刚设置

getActionBar().setBackgroundDrawable(null);

这将从您的操作栏中删除该行

于 2014-07-17T05:08:51.560 回答
1

我使用了这个 ^_^ 并且它 100% 正常工作:

    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    Drawable res = getResources().getDrawable(R.drawable.ab_transparent_example);
    getActionBar().setBackgroundDrawable(res);

就用这个.9.png

于 2014-10-20T22:48:23.523 回答
0

就我而言,在我的应用程序中,我使用了 Holo 主题。

<style name="AppTheme" parent="android:Theme.Holo">
       ...
 </style>

背景工具栏是通过属性设置的。

<style name="AppTheme" parent="android:Theme.Holo">
    <item name="android:actionBarStyle">@style/ActionBarStyle</item>
</style>

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

标准 Holo 操作栏背景是九个可绘制的补丁,如下所示:
九个可绘制的补丁

所以,如果你想改变底线的颜色,你需要创建一个新的九补丁drawable。 创建可调整大小的位图(9-Patch 文件)

将文件放在drawable文件夹中(例如drawable-xxhdpi),并在主题中指定文件的路径。

于 2017-03-02T11:59:24.417 回答