我正在开发一个 Android 应用程序,我正在使用 ActionBarSherlock 来实现兼容性。到目前为止,一切都很好,除了我想更改溢出菜单项的文本颜色。
这是他们目前的样子:
现在,这样做的原因是我使用 Holo.Light.DarkActionBar 作为基本主题,因为这样图标是白色的,ActionBar 的标题和副标题上的文本是白色的,以及其他一些东西。
据我所知,根据这个question ,我应该能够简单地更改以下内容:
<!-- 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>
还有 child 主题:
<style name="ActionBar.Solid.Laprensa_compat_holo_light_dark_action_bar" parent="@style/Widget.Sherlock.Light.ActionBar.Solid.Inverse">
还是不行。
我引用的答案指出我应该确保我使用的是正确的适配器布局,但实际上,我并没有自己手动填充任何代码,它是常规的 onCreateOptionsMenu
实现。
关于我可以更改什么以使文本变黑的任何想法?您应该知道更改 actionMenuTextColor
是针对 托管在 操作栏本身的项目,并且不会更改溢出菜单项
编辑 根据 Matthias 的回答,我尝试了以下样式:
<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>
但文本仍然不可见。
最佳答案
<style name="AppTheme" parent="@style/Theme.Sherlock.Light.DarkActionBar">
<item name="android:textAppearanceLargePopupMenu">
@style/TextAppearance.Styled.Widget.PopupMenu.Large</item>
</style>
<style name="TextAppearance.Styled.Widget.PopupMenu.Large"
parent="TextAppearance.Sherlock.Widget.PopupMenu.Large">
<item name="android:textColor">?attr/textColorPrimaryInverse</item>
</style>
关于android - ActionBarSherlock 更改溢出操作项的文本颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16538000/