我在我的应用程序中使用 ActionBar sherlock 库如何更改 ActionBar SUBMENU 列表项背景我应该在样式中使用什么属性?
问问题
2246 次
2 回答
1
本质上,您将希望MenuItem
通过在您的.android:itemBackground
color/drawable selector
style.xml
如果您的菜单也有submenu's
,那么您还需要header
设置子菜单标题的样式,通常通过actionBarPopupTheme
用您的custom style
.
样式.xml
<resources>
<style name="AppTheme" parent="Theme.AppCompat.DayNight.DarkActionBar">
<item name="android:itemBackground">@drawable/menu_popup_selector</item>
<item name="actionBarPopupTheme">@style/SubmenuHeaderStyle</item>
</style>
<style name="SubmenuHeaderStyle" parent="ThemeOverlay.AppCompat.Light">
<item name="android:colorBackground">@color/colorAccent</item>
</style>
</resources>
menu_popup_selector.xml
<?xml version="1.0" encoding="utf-8"?>
<selector
xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true">
<color
android:color="@color/colorPrimary"/>
</item>
<item>
<color
android:color="#655611"/>
</item>
</selector>
只是为了让您知道什么时候我有没有子菜单的普通菜单看起来像这样的层次结构视图:
<menu>
<item/>
<item/>
<item/>
</menu>
以及带有子菜单的菜单作为层次结构视图的示例:
<menu>
<item/>
<item/>
<group>
<item>
<menu>
item
item
item
</menu>
</item>
</group>
<item/>
<item/>
</menu>
于 2018-03-27T07:58:20.747 回答
0
这篇文章向您展示了如何设置 ABS 下拉项目的样式。您可以从查看 res/values/styles.xml 并更改下拉项样式开始。
<style name="Theme.MyApp" parent="Theme.Sherlock.Light">
<!-- the text when loading -->
<!--
<item name="actionBarStyle">@style/Widget.MyApp.ActionBar</item>
<item name="android:actionBarStyle">@style/Widget.MyApp.ActionBar</item>
-->
<!-- the dropdown items -->
<item name="android:spinnerDropDownItemStyle">@style/MyApp.Widget.Holo.DropDownItem</item>
<item name="spinnerDropDownItemStyle">@style/MyApp.Widget.Holo.DropDownItem</item>
<!-- the action bar dropdown menu item -->
<!--
<item name="android:spinnerItemStyle">@style/MyApp.Widget.Holo.SpinnerItem</item>
<item name="spinnerItemStyle">@style/MyApp.Widget.Holo.SpinnerItem</item>
-->
</style>
于 2013-08-22T19:35:24.127 回答