更改溢出项目的背景和文本颜色

时间:2014-03-11 22:25:31

标签: android android-actionbar

我想更改用户按下溢出图标时显示的弹出菜单的背景和文字颜色。

如果我使用Theme.Holo或Theme.Holo.Light它可以工作,但我正在使用Theme.Holo.Light.DarkActionBar,它永远不会工作。我开始假设这是一个Android错误。

我正在测试带有4.4.2的Nexus 4,但它也无法在带有API 19的仿真器上运行。

在尝试了StackOverflow中遇到的大量潜在解决方案后,我正在做的是:

<style name="Theme.MyApp" parent="android:Theme.Holo.Light.DarkActionBar">
    <item name="android:actionBarWidgetTheme">@style/ActionBarWidget</item>
</style>

<style name="AndroidPitActionBarWidget" parent="android:Theme.Holo.Light">
    <item name="android:popupMenuStyle">@android:style/Widget.Holo.Light.PopupMenu</item>
    <item name="android:dropDownListViewStyle">@android:style/Widget.Holo.Light.ListView.DropDown</item>
</style>

虽然有效,但它会改变SearchView的样式,这是另一个需要改变的痛苦。 所以我不认为这是一个解决方案。

我想要的只是将弹出窗口的背景/文本更改为Light版本,即浅色背景和黑色文本。

我也尝试在主题中设置这两个属性,而不是使用actionBarWidgetTheme。

在这类问题上浪费时间真是令人沮丧。

我也尝试使用动作栏样式生成器使背景变白,但文本是白色的,我无法将其更改为黑色。

非常感谢。

1 个答案:

答案 0 :(得分:0)

如果使用操作栏样式生成器中的主题设置该面板的背景颜色,则可以尝试添加下拉列表视图的android:textColor属性。

如果这不起作用,您可以在onCreateOptionsMenu方法中交替设置代码中的字符串颜色,详见this SO thread

相关问题