Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/204.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android:更改ActionBar下方线条的颜色_Android_Android Actionbar - Fatal编程技术网

Android:更改ActionBar下方线条的颜色

Android:更改ActionBar下方线条的颜色,android,android-actionbar,Android,Android Actionbar,我想更改操作栏下面橙色线的颜色 我试过一些方法,但到目前为止没有任何效果 我的银河S2当前的主题是橙色主题。 所以改变了主题,也改变了台词。 但我不知道如何访问该行以更改颜色。您可以使用此代码来实现您的目的 background.xml <?xml version="1.0" encoding="utf-8"?> <layer-list xmlns:android="http://schemas.android.com/apk/res/android">

我想更改操作栏下面橙色线的颜色

我试过一些方法,但到目前为止没有任何效果

我的银河S2当前的主题是橙色主题。 所以改变了主题,也改变了台词。
但我不知道如何访问该行以更改颜色。

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

background.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>

styles.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>

@style/AppTheme.ActionBar
#ffffff
#ffffff
@可绘制/背景
这些代码适用于没有任何选项菜单(如有问题的图像显示)的情况,如果有选项菜单,则必须自定义选项菜单项背景

如果您有以下选项菜单,则代码适用:

<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>

@style/AppTheme.ActionBar
@style/AppTheme.PopUpMenu
@可绘制/背景
@可绘制/背景

有一种比这更简单的方法(创建一系列样式)。 参考。刚定

getActionBar().setBackgroundDrawable(null);

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

我使用了这个^ ^,它100%工作:

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

在我的例子中,在我的应用程序中,我使用了全息主题

<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 action bar背景是九块可绘制的,如下所示:

因此,如果您想更改底线的颜色,则需要创建一个新的可绘制的九面片。


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

使用操作栏样式生成器当我在此处使用弹出菜单样式时,我的操作栏文本将消失。