更改android操作栏子菜单文本颜色
如何在Android中更改子菜单的文本颜色?我自定义了应用程序主题并覆盖了相关属性,但它仍然不起作用。“我的菜单”有两个子菜单,它们最初是隐藏的,单击后显示。但是,子菜单的样式不能修改,而操作栏的标题可以修改。这个问题整天困扰着我,我几乎想尽一切办法。 这是我的密码 menu.xml更改android操作栏子菜单文本颜色,android,menu,android-actionbar,android-theme,textcolor,Android,Menu,Android Actionbar,Android Theme,Textcolor,如何在Android中更改子菜单的文本颜色?我自定义了应用程序主题并覆盖了相关属性,但它仍然不起作用。“我的菜单”有两个子菜单,它们最初是隐藏的,单击后显示。但是,子菜单的样式不能修改,而操作栏的标题可以修改。这个问题整天困扰着我,我几乎想尽一切办法。 这是我的密码 menu.xml <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
tools:context="com.example.classsignin.MainActivity" >
<item
android:id="@+id/action_overflow"
android:title="分享"
android:icon="@drawable/drop_select"
android:showAsAction="always"
>
<menu >
<item
android:id="@+id/absent"
android:title="请假"
android:icon="@drawable/absent"
/>
<item
android:id="@+id/refresh"
android:title="刷新课程"
android:icon="@drawable/refresh"
/>
</menu>
</item>
styles.xml
<style name="CustomTheme" parent="@android:style/Theme.Holo.Light">
<item name="android:actionBarStyle">@style/MyActionBarTheme</item>
<item name="android:actionMenuTextAppearance">@style/MyActionBarMenu</item>
<item name="android:actionMenuTextColor">@color/blue</item>
<item name="android:homeAsUpIndicator">@drawable/back</item>
<item name="android:spinnerItemStyle">@style/MySpinnerItem</item>
</style>
<style name="MyActionBarTheme" parent="@android:style/Widget.Holo.Light.ActionBar">
<item name="android:background">@color/white</item>
<item name="android:titleTextStyle">@style/MyActionBarTitle</item>
</style>
<style name="MyActionBarTitle" parent="@android:style/TextAppearance.Holo.Widget.ActionBar.Title">
<item name="android:textSize">16sp</item>
<item name="android:textColor">@color/blue</item>
</style>
<style name="MyActionBarMenu" parent="@android:style/TextAppearance.Holo.Widget.ActionBar.Menu">
<item name="android:textSize">16sp</item>
<item name="android:textColor">@color/blue</item>
</style>
<style name="MySpinnerItem" parent="@android:style/Widget.Holo.TextView.SpinnerItem">
<item name="android:textAppearance">@style/MyTextAppearance</item>
</style>
<style name="MyTextAppearance" parent="@android:style/TextAppearance.Holo.Widget.TextView.SpinnerItem">
<item name="android:textColor">@color/blue</item>
</style>
@风格/动作风格
@样式/MyActionBar菜单
@颜色/蓝色
@可缩回
@风格/魅力
@颜色/白色
@style/MyActionBarTitle
16便士
@颜色/蓝色
16便士
@颜色/蓝色
@样式/我的文本外观
@颜色/蓝色
基本上,您需要通过使用style.xml中的自定义颜色/可绘制选择器
覆盖android:itemBackground
属性以及要覆盖的vtextColor`属性来定制菜单项的样式
如果您的菜单也有子菜单
,那么您还需要设置子菜单的标题
的样式,通常通过使用自定义样式
覆盖属性actionBarPopupTheme
自动设置为白色背景
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/colorPrimary</item>
<item name="android:textColor">@color/colorAccent</item>
</style>
</resources>
@可绘图/菜单\弹出\选择器
@样式/子菜单标题样式
@颜色/原色
@颜色/颜色重音
菜单\弹出\选择器.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>
项目
项目
项目