gpt4 book ai didi

android - 如何在不更改标准操作栏的情况下更改上下文操作栏的溢出图标?

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:08:45 28 4
gpt4 key购买 nike

我的应用程序的主题如下图所示:

action bar with white overflow icon

由于主题基于 Theme.Holo.Light,其中包含深色操作栏文本和溢出图标,因此我使用以下样式调整了溢出图标:

<style name="ActionBar.Light" parent="android:style/Widget.Holo.ActionBar">
<item name="android:background">@color/highlight</item>
<item name="android:titleTextStyle">@style/TextAppearance.ActionBar.Title.Light</item>
<item name="android:subtitleTextStyle">@style/TextAppearance.ActionBar.Subtitle.Light</item>
</style>
...
<style name="Theme.Light" parent="@android:style/Theme.Holo.Light">
...
<item name="android:actionBarStyle">@style/ActionBar.Light</item>
<item name="android:actionOverflowButtonStyle">@android:style/Widget.Holo.ActionButton.Overflow</item>
...
</style>

选中一个或多个列表条目时,我想显示一个白色的上下文操作栏,但不幸的是,在白色背景上看不到白色溢出图标:

contextual action bar with white overflow icon on white background

关于如何仅通过样式或编程更改上下文栏的溢出图标的任何想法?

最终解决方法(2014 年 2 月 27 日)

似乎没有选项可以独立于标准操作栏之一来更改上下文操作栏的溢出图标。所以我别无选择,只能将上下文栏的背景颜色更改为深灰色,以使白色溢出按钮可见:

gray contextual action bar

右边的图标在我的控制之下,所以很容易改变它们。左侧的“完成”图标和文本(检查计数器)可以使用主题属性轻松更改。只有“完成”图标和检查计数器之间的分割隔符不能使用属性更改。他们需要自定义布局——这就是为什么我暂时保留它的原因。

这是我的上下文栏样式和主题的相关部分:

<style name="TextAppearance.ActionBar.Title" parent="@android:style/TextAppearance.Holo.Widget.ActionBar.Title">
<item name="android:fontFamily">sans-serif-light</item>
</style>
<style name="TextAppearance.ActionBar.Title.Light">
<item name="android:textColor">#ffffff</item>
</style>

<style name="ContextualBar.Light" parent="android:style/Widget.Holo.ActionMode">
<item name="android:background">#666666</item>
<item name="android:titleTextStyle">@style/TextAppearance.ActionBar.Title.Light</item>
<item name="android:actionMenuTextColor">#ffffff</item>
</style>

<style name="Theme.Light" parent="@android:style/Theme.Holo.Light">
...
<item name="android:actionBarStyle">@style/ActionBar.Light</item>
<item name="android:actionModeStyle">@style/ContextualBar.Light</item>
<item name="android:actionModeCloseDrawable">@drawable/ic_action_done</item>
<item name="android:actionOverflowButtonStyle">@android:style/Widget.Holo.ActionButton.Overflow</item>
<item name="android:actionMenuTextColor">#ffffff</item>
...
</style>

广告:您可以在 the final app "uPod" 中查看完整结果可以在 Google play 上找到!

最佳答案

关于您的主题并假设您使用 Appcompat

<style name="AppTheme" parent="Theme.AppCompat.NoActionBar">
<item name="android:actionOverflowButtonStyle">@style/OverFlowStyle</item>
</style>
<style name="OverFlowStyle" parent="Widget.AppCompat.ActionButton.Overflow">
<item name="android:src">@drawable/your_selector_drawable_here</item>
</style>

关于android - 如何在不更改标准操作栏的情况下更改上下文操作栏的溢出图标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19522039/

28 4 0