android - ActionBarSherlock 更改溢出操作项的文本颜色

标签 android styles actionbarsherlock android-spinner

我正在开发一个 Android 应用程序,我正在使用 ActionBarSherlock 来实现兼容性。到目前为止,一切都很好,除了我想更改溢出菜单项的文本颜色。

这是他们目前的样子:

enter image description here

现在,这样做的原因是我使用 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/

相关文章:

php - 如何为考勤记录PHP CSS设置单选按钮?

android - 为 ActionBar Sherlock 选项卡设置自定义 View

android - 如何从声音android中找出RPM(每分钟旋转)?

android - 如何配置我的 Phonegap 应用程序以根据手机的分辨率相应地缩放其视口(viewport)?

android - Kotlin-多个动画同时出现和/或互相重复

.net - .Net4 的 WPF 全局样式问题

android - 全息无处不在 : Dark action bars and dialogs

android - ActionBarSherlock 选项卡高度在 Jelly Bean 上不可调整

android - 使用 actionbarsherlock 选项卡样式的选项卡内容

android - 如何将启动屏幕 Activity 中获取的数据发送到 Kotlin 中的其他 Activity?