我正在开发一个 android 应用程序,并且我正在使用 ActionBarSherlock 来实现兼容性。到目前为止一切都很好,除了我想更改溢出菜单项的文本颜色。
这是他们目前的样子:
现在,这样做的原因是我使用 Holo.Light.DarkActionBar 作为基本主题,因为这样图标是白色的,ActionBar 的标题和子标题上的文本是白色的,以及其他一些东西。
据我所知,根据这个问题,我应该能够简单地更改以下内容:
<!-- For Values -->
<style name="Theme.Laprensa_compat_holo_light_dark_action_bar" parent="@style/Theme.Sherlock.Light.DarkActionBar">
<item name="spinnerItemStyle">@style/SpinnerItemStyle</item>
<!-- For Values-v14 -->
<style name="Theme.Laprensa_compat_holo_light_dark_action_bar" parent="@style/Theme.Sherlock.Light.DarkActionBar">
<item name="android:spinnerItemStyle">@style/SpinnerItemStyle</item>
而且SpinnerItemStyle
是:
<style name="SpinnerItemStyle" parent="Widget.Sherlock.TextView.SpinnerItem">
<item name="android:textColor">@android:color/black</item>
</style>
现在,这似乎不起作用,所以我添加了
<item name="spinnerItemStyle">@style/SpinnerItemStyle</item>
也到儿童主题:
<style name="ActionBar.Solid.Laprensa_compat_holo_light_dark_action_bar" parent="@style/Widget.Sherlock.Light.ActionBar.Solid.Inverse">
这仍然是不行的。
我引用的答案说我应该确保我使用正确的适配器布局,但实际上,我自己并没有手动填充任何代码,这是常规onCreateOptionsMenu
实现。
关于我可以更改什么以使文本变黑的任何想法?而且您应该知道更改actionMenuTextColor
是针对操作栏本身上托管的项目,并且不会更改溢出菜单项
编辑根据马蒂亚斯的回答,我尝试了以下风格:
<style name="TextAppearance.Styled.Widget.PopupMenu.Large" parent="TextAppearance.Sherlock.Widget.PopupMenu.Large">
<item name="android:textColor">@android:color/black</item>
</style>
并将其用于主题:
<style name="Theme.Laprensa_compat_holo_light_dark_action_bar" parent="@style/Theme.Sherlock.Light.DarkActionBar">
<item name="textAppearanceLargePopupMenu">@style/TextAppearance.Styled.Widget.PopupMenu.Large</item>
</style>
但是文本仍然不可见。