[英]How to change the text color of the overflow menu item to a different color using Sherlock action bar theme
[英]Applying shadow and text color for Title and Menu Item in Sherlock Action bar
我正在努力實現兩件事
所有這些都在XML上。
什么在實驗后有用?
菜單項的文本顏色在任何地方都不起作用。 在示例代碼中,當我在主Theme標簽中聲明MenuTextStyle時,我能夠更改文本大小而不是顏色。
<style name="Theme.SexyApp" parent="Theme.Sherlock.Light"> <item name="actionBarStyle">@style/Widget.SexyApp.ActionBar</item> <item name="android:actionBarStyle">@style/Widget.SexyApp.ActionBar</item> <item name="android:actionBarItemBackground">@drawable/list_state</item> <item name="actionBarItemBackground">@drawable/list_state</item> <item name="android:actionMenuTextAppearance">@style/Theme.SexyApp.ActionBar.MenuTextStyle</item> <item name="actionMenuTextAppearance">@style/Theme.SexyApp.ActionBar.MenuTextStyle</item> </style> <style name="Widget.SexyApp.ActionBar" parent="@style/Widget.Sherlock.Light.ActionBar"> <item name="android:displayOptions">showHome|useLogo|showTitle</item> <item name="android:titleTextStyle">@style/Theme.SexyApp.ActionBar.TextAppearance</item> <item name="titleTextStyle">@style/Theme.SexyApp.ActionBar.TextAppearance</item> </style> <style name="Theme.SexyApp.ActionBar.TextAppearance" parent="@style/TextAppearance.Sherlock.Widget.ActionBar.Title"> <item name="android:textColor">@color/white</item> <item name="android:textSize">20dp</item> <item name="android:textStyle">bold</item> <item name="android:shadowColor">#333333</item> <item name="android:shadowRadius">1</item> <item name="android:shadowDy">1</item> </style> <style name="Theme.SexyApp.ActionBar.MenuTextStyle" parent="@style/TextAppearance.Sherlock.Widget.ActionBar.Menu"> <item name="android:textColor">@color/white</item> <item name="android:textSize">13dp</item> <item name="android:textStyle">bold</item> <item name="android:shadowColor">#333333</item> <item name="android:shadowRadius">1</item> <item name="android:shadowDy">1</item> </style>
要更改菜單項文本顏色,您需要將actionMenuTextColor項添加到主題樣式中,如下面的代碼所示:
<style name="ThemeName" parent="@style/Theme.Sherlock.Light">
<item name="actionMenuTextColor">@color/white</item>
<item name="android:actionMenuTextColor">@color/white</item>
</style>
要更新菜單項文本外觀(顏色,大小,樣式),您需要在兩個不同的位置進行更改。 以下答案適用於sherlock.actionbar
1:在themes.xml文件中添加以下行:
<style name="Theme.Mytheme" parent="@style/Theme.Sherlock">
<item name="android:actionMenuTextAppearance">@style/CustomMenuItem</item> // define custom style in the style.xml file.
<item name="actionMenuTextColor">@color/mycolor</item>
<item name="android:actionMenuTextColor">@color/mycolor</item>
2:在styles.xml中
<style name="CustomMenuItem" parent="@style/TextAppearance.Sherlock.Widget.ActionBar.Menu">
<item name="android:textStyle">normal</item>
<item name="android:textSize">15sp</item>
<item name="android:textAllCaps">false</item>
</style>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.