如何自定义Action Bar Style?

use*_*008 1 android android-actionbar

如何更改操作栏后退按钮和操作栏菜单图标(附加图像)的颜色.我有以下样式代码(下面),使用它我自定义文本但我无法完全自定义操作栏.

下面是我使用的样式代码:

<style name="MyCustomTheme" parent="Theme.Sherlock.Light">

     <item name="actionBarStyle">@style/ActionBar</item>

     <item name="android:actionBarStyle">@style/ActionBar</item>

     </style>

 <style name="ActionBar" parent="Widget.Sherlock.ActionBar">
        <item name="background">@drawable/bg_header</item> -----------(1)
        <item name="android:background">@drawable/bg_header</item>

        <item name="android:titleTextStyle">@style/customTextAppearance.Sherlock.Widget.ActionBar.Title</item> ----(2)
        <item name="titleTextStyle">@style/customTextAppearance.Sherlock.Widget.ActionBar.Title</item>
         <item name="android:homeAsUpIndicator">@style/customTextAppearance.Sherlock.Widget.ActionBar.Title</item>
    </style>


 <style name="customTextAppearance.Sherlock.Widget.ActionBar.Title" parent="TextAppearance.Sherlock.Widget.ActionBar.Title">
        <item name="android:textSize">18dp</item>
        <item name="android:textColor">#ffffff</item>
        <item name="android:shadowColor">#ffffff</item>
        <item name="android:shadowDy">3</item>
        <item name="android:textStyle">bold</item>

</style>
Run Code Online (Sandbox Code Playgroud)

感谢您的帮助,谢谢. 屏幕截图

Pra*_* シ 5

只需为您的操作栏找到合适的图标并对其进行自定义...然后在您的...中进行更改

您可以执行以下操作来更改操作栏的图标

样式文件

<style name="Widget.ActionButton.Overflow" parent="@android:style/Widget.Holo.ActionButton.Overflow">
    <item name="android:src">@drawable/ic_action_overflow</item>
</style>

<style name="Your.Theme" parent="@android:style/Theme.Holo.Light.DarkActionBar">
    <item name="android:actionOverflowButtonStyle">@style/Widget.ActionButton.Overflow</item>

    <item name="android:homeAsUpIndicator">@drawable/my_fancy_up_indicator</item>
</style>
Run Code Online (Sandbox Code Playgroud)


Ank*_*ita 5

在android帮助https://developer.android.com/training/basics/actionbar/styling.html上查看此页面

仅支持Android 3.0及更高版本时,

您可以像这样定义操作栏的背景:res/values/themes.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <!-- the theme applied to the application or activity -->
    <style name="CustomActionBarTheme"
           parent="@android:style/Theme.Holo.Light.DarkActionBar">
        <item name="android:actionBarStyle">@style/MyActionBar</item>
    </style>

    <!-- ActionBar styles -->
    <style name="MyActionBar"
           parent="@android:style/Widget.Holo.Light.ActionBar.Solid.Inverse">
        <item name="android:background">@drawable/actionbar_background</item>
    </style>
</resources>
Run Code Online (Sandbox Code Playgroud)

然后将您的主题应用于整个应用或个人活动:

<application android:theme="@style/CustomActionBarTheme" ... />
Run Code Online (Sandbox Code Playgroud)

适用于Android 2.1及更高版本

使用支持库时,与上面相同的主题必须如下所示:

RES /值/的themes.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <!-- the theme applied to the application or activity -->
    <style name="CustomActionBarTheme"
           parent="@style/Theme.AppCompat.Light.DarkActionBar">
        <item name="android:actionBarStyle">@style/MyActionBar</item>

        <!-- Support library compatibility -->
        <item name="actionBarStyle">@style/MyActionBar</item>
    </style>

    <!-- ActionBar styles -->
    <style name="MyActionBar"
           parent="@style/Widget.AppCompat.Light.ActionBar.Solid.Inverse">
        <item name="android:background">@drawable/actionbar_background</item>

        <!-- Support library compatibility -->
        <item name="background">@drawable/actionbar_background</item>
    </style>
</resources>
Run Code Online (Sandbox Code Playgroud)

然后将您的主题应用于整个应用或个人活动:

<application android:theme="@style/CustomActionBarTheme" ... />
Run Code Online (Sandbox Code Playgroud)