ActionBarSherlock hardkey menu panel text color

白昼怎懂夜的黑 提交于 2019-12-06 19:08:06

问题


I have a small question about theming my app that uses ActionBarSherlock. Everything works fine except on Samsung phones with TouchWizz. The overflow menu items appear by pressing the hardware menu key.

I know how to change the panel background. My default theme extends Theme.Sherlock.Light.DarkActionBar, so the default menu item text color in the hardware panel will be black, I wan't to change this.

Any ideas on how to do this besides changing the parent of my default theme?

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


回答1:


Here are the correct attrs to tune hardware menu style. You should look at 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>

Tested on HoloEverywhere lib and 2.3 emulator. See attrs doc for details.




回答2:


I'm not sure if I understand what you want to do, but if you want to change textColor in this panel you can create custom style with parent set to TextAppearance.Sherlock.Widget.PopupMenu and then change textColor property. Like this:

<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>

Worked for me :)



来源:https://stackoverflow.com/questions/14360017/actionbarsherlock-hardkey-menu-panel-text-color

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!