Android ActionBar MenuItem LowerCase
Solution for native ActionBar implementation:
<?xml version="1.0" encoding="utf-8"?><resources> <style name="MyTheme" parent="android:Theme.Holo"> <item name="android:actionMenuTextAppearance">@style/MyMenuTextAppearance</item> </style> <style name="MyMenuTextAppearance" parent="android:TextAppearance.Holo.Widget.ActionBar.Menu"> <item name="android:textAllCaps">false</item> </style></resources>
If you are using ActionBarSherlock there are two different approaches:
1) Create boolean resource abs__config_actionMenuItemAllCaps
and set it to false
:
<?xml version="1.0" encoding="utf-8"?><resources> <bool name="abs__config_actionMenuItemAllCaps">false</bool></resources>
2) Or create theme with overriden actionMenuTextAppearance
and use it in AndroidManifest.xml
:
<?xml version="1.0" encoding="utf-8"?><resources> <style name="MyTheme" parent="Theme.Sherlock"> <item name="actionMenuTextAppearance">@style/MyMenuTextAppearance</item> <item name="android:actionMenuTextAppearance">@style/MyMenuTextAppearance</item> </style> <style name="MyMenuTextAppearance" parent="TextAppearance.Sherlock.Widget.ActionBar.Menu"> <item name="android:textAllCaps">false</item> </style></resources>
PLEASE NOTE: there is bug in ActionBarSherlock that forces MenuItem to be upper case on pre-ICS (https://github.com/JakeWharton/ActionBarSherlock/issues/969). I've submitted patch but it is not merged at the moment. For now you can use my fork: https://github.com/alexander-mironov/ActionBarSherlock/tree/dev, I will update this answer when my code is merged in the main repository.
UPDATE: my fix has been merged into main ActionBarSherlock repository.
Add the following to one of your values xml files -
<bool name="abc_config_actionMenuItemAllCaps">false</bool>
Just to complete the answer, if you're using AppCompat the parent style is:
<style name="MyMenuTextAppearance" parent="@style/TextAppearance.AppCompat.Widget.ActionBar.Menu"> <item name="android:textAllCaps">false</item></style>