12

我有一个关于主题化我使用 ActionBarSherlock 的应用程序的小问题。一切正常,除了Samsung phones with TouchWizz. 溢出菜单项通过按下硬件菜单键出现。

我知道如何更改面板背景。我的默认主题 extends Theme.Sherlock.Light.DarkActionBar,所以硬件面板中的默认菜单项文本颜色将是black,我不想更改它。

除了更改我的默认主题的父级之外,关于如何执行此操作的任何想法?

<style name="Theme.MyApp" parent="@style/Theme.Sherlock.Light.DarkActionBar">
    <item name="android:panelBackground">@drawable/menu_hardkey_panel</item>
</style>

在此处输入图像描述

4

2 回答 2

1

我不确定我是否理解您想要做什么,但如果您想在此面板中更改 textColor,您可以创建自定义样式,并将父级设置为 TextAppearance.Sherlock.Widget.PopupMenu,然后更改 textColor 属性。像这样:

<style name="Widget.MyApp.ActionBarPopupLargeTextColor" parent="TextAppearance.Sherlock.Widget.PopupMenu.Large">
<item name="android:textColor">@color/black</item>
</style>

<style name="Widget.MyApp.ActionBarPopupSmallTextColor" parent="TextAppearance.Sherlock.Widget.PopupMenu.Small">
    <item name="android:textColor">@color/black</item>
</style>

为我工作:)

于 2013-01-31T11:21:15.383 回答
0

以下是调整硬件菜单样式的正确属性。你应该看看panelColorForeground ;-)

<item name="android:panelColorBackground">#FFFFFF</item>
<item name="android:panelColorForeground">@color/primary_text_holo_dark</item>
<item name="android:panelFullBackground">@drawable/menu_background_fill_parent_width_holo_dark</item>
<item name="android:panelTextAppearance">@style/Holo.TextAppearance</item>

在 HoloEverywhere lib 和 2.3 模拟器上测试。 有关详细信息,请参阅attrs 文档

于 2013-05-29T11:05:52.527 回答