2

我一直在尝试将操作栏中的溢出图标(三个点)更改为白色而不是灰色。我遵循了每个人的建议,但它保持不变。这是我的代码:

<style name="ActionBar.AccentColor.Background" parent="@android:style/Widget.Holo.ActionBar.Solid">
    <item name="android:actionOverflowButtonStyle">@style/MyActionButtonOverflow</item>
    <item name="android:background">@color/accent_dark</item>
    <item name="android:backgroundSplit">@color/accent_dark</item>
    <item name="android:titleTextStyle">@style/ActionBar.TitleTextStyle</item>
</style>

<style name="MyActionButtonOverflow" parent="android:style/Widget.Holo.Light.ActionButton.Overflow">
    <item name="android:src">@drawable/ic_action_back_white</item>
    <item name="android:background">?android:attr/actionBarItemBackground</item>
    <item name="android:contentDescription">"Lala"</item>
</style>

<style name="Theme" parent="@android:style/Theme.Holo.Light">
     <item name="android:actionBarStyle">@style/ActionBar.AccentColor.Background</item>
</style>

我什至创建了一个新的应用程序,它可以 100% 运行。一个想法是,也许我所包含的 apklib 项目导致了问题,所以我将所有内容从 apklib 中移出并再次测试。不知道发生了什么!

4

1 回答 1

10

您放错了android:actionOverflowButtonStyle物品。它必须在主题中定义,而不是在里面android:actionBarStyle

将样式更改为以下内容,它应该可以工作:

<style name="ActionBar.AccentColor.Background" parent="@android:style/Widget.Holo.ActionBar.Solid">
    <item name="android:background">@color/accent_dark</item>
    <item name="android:backgroundSplit">@color/accent_dark</item>
    <item name="android:titleTextStyle">@style/ActionBar.TitleTextStyle</item>
</style>

<style name="MyActionButtonOverflow" parent="android:style/Widget.Holo.Light.ActionButton.Overflow">
    <item name="android:src">@drawable/ic_action_back_white</item>
    <item name="android:background">?android:attr/actionBarItemBackground</item>
    <item name="android:contentDescription">"Lala"</item>
</style>

<style name="Theme" parent="@android:style/Theme.Holo.Light">
     <item name="android:actionBarStyle">@style/ActionBar.AccentColor.Background</item>
     <item name="android:actionOverflowButtonStyle">@style/MyActionButtonOverflow</item>
</style>
于 2013-11-13T10:27:34.800 回答