我试图找出,如何使用sherlock操作栏将菜单项的文本颜色更改为其他颜色。以下是我试过的主题
<style name="MYTHEME" parent="Theme.Sherlock.Light.ForceOverflow">
<item name="android:actionMenuTextColor">@color/menu_color</item>
<item name="actionMenuTextColor">@color/menu_color</item>
<item name="android:actionDropDownStyle">@style/MYTHEME.ActionBarStyle.DropDownStyle</item>
<item name="actionDropDownStyle">@style/MYTHEME.ActionBarStyle.DropDownStyle</item>
</style>
<style name="MYTHEME.ActionBarStyle.DropDownStyle" parent="Widget.Sherlock.Spinner.DropDown.ActionBar">
<item name="android:textColor">@color/menu_color</item>
</style>
我可以使用上面的方法更改菜单项的颜色,但无法通过'actionDropDownStyle'更改溢出菜单项的颜色...
我还查看了链接https://groups.google.com/forum/#!msg/actionbarsherlock/5lHOKNlXn_4/f9XicMXbFFAJ 但问题只有一半,关于更改溢出菜单背景。
如何更改溢出菜单项的文本颜色?
答案 0 :(得分:4)
您必须创建自定义微调器样式,例如覆盖ActionBarSherlock库提供的样式:
<style name="SpinnerItemStyle" parent="Widget.Sherlock.TextView.SpinnerItem">
<item name="android:textColor">@android:color/white</item>
<item name="android:textSize">22sp</item>
<item name="android:textStyle">bold</item>
<item name="android:padding">4dp</item>
<item name="android:gravity">left|center_vertical</item>
</style>
然后,在你的主题中引用它,在spinnerItemStyle项目中:
<item name="spinnerItemStyle">@style/SpinnerItemStyle</item>
修改强>
注意:确保您的适配器将com.actionbarsherlock.R.layout.sherlock_spinner_dropdown_item作为下拉项,并将com.actionbarsherlock.R.layout.sherlock_spinner_item作为微调项:
ArrayAdapter<String> navigationAdapter = new ArrayAdapter<String>(context, com.actionbarsherlock.R.layout.sherlock_spinner_item, navigationItems);
navigationAdapter.setDropDownViewResource(com.actionbarsherlock.R.layout.sherlock_spinner_dropdown_item);
答案 1 :(得分:0)
经过大量搜索后,可以修改ActionBar
的{{1}}的 OverflowMenu 中的文字颜色ActionBarSherlock
。仅在父样式元素下具有以下主题样式。仍然没有检查ActionBar
内的所有小部件是否已更改。如果发现,请原谅。
res\values\styles.xml
<style name="Theme.Zname" parent="@style/Theme.Sherlock.Light">
<item name="actionBarItemBackground">@drawable/selectable_background_zname</item>
<item name="actionBarWidgetTheme">@style/Overflow.Text.Color</item>
</style>
<style name="Overflow.Text.Color" parent="Widget">
<item name="android:textColor">@android:color/white</item>
</style>
res\values-v14\styles.xml
<style name="Theme.Zname" parent="@style/Theme.Sherlock.Light">
<item name="actionBarItemBackground">@drawable/selectable_background_zname</item>
<item name="android:actionBarWidgetTheme">@style/Overflow.Text.Color</item>
</style>
<style name="Overflow.Text.Color" parent="Widget">
<item name="android:textColor">@android:color/white</item>
</style>