ネイティブ ActionBar 実装のソリューション:
<?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>
ActionBarSherlock を使用している場合、2 つの異なるアプローチがあります。
1) boolean リソースabs__config_actionMenuItemAllCaps
を作成し、次のように設定しfalse
ます。
<?xml version="1.0" encoding="utf-8"?>
<resources>
<bool name="abs__config_actionMenuItemAllCaps">false</bool>
</resources>
2) または、overridenactionMenuTextAppearance
を使用してテーマを作成し、次のように使用し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>
注意: ActionBarSherlock にはバグがあり、ICS より前のバージョンでは MenuItem が強制的に大文字になります ( https://github.com/JakeWharton/ActionBarSherlock/issues/969 )。パッチを提出しましたが、現時点ではマージされていません。今のところ、私のフォークを使用できます: https://github.com/alexander-mironov/ActionBarSherlock/tree/dev、私のコードがメインリポジトリにマージされたら、この回答を更新します。
更新:私の修正はメインの ActionBarSherlock リポジトリにマージされました。