如何设置 android 操作栏溢出菜单的样式
How to style android actionbar overflow menu
我正在通过官方文档学习android。问题是,android:popupMenuStyle
不起作用。我尝试了所有关于此的发现,例如使用 android:actionBarWidgetTheme
,但其中 none 解决了我的问题。
这是我的风格:
<resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="CustomTheme" parent="@style/Theme.AppCompat.Light">
<item name="android:actionBarStyle">@style/CustomTheme.ActionBar</item>
<item name="actionBarStyle">@style/CustomTheme.ActionBar</item>
<item name="android:actionOverflowButtonStyle">@style/CustomTheme.ActionBar.ActionOverflowButtonStyle</item>
<item name="actionOverflowButtonStyle">@style/CustomTheme.ActionBar.ActionOverflowButtonStyle</item>
<item name="android:popupMenuStyle">@style/CustomTheme.ActionBar.PupopMenuStyle</item>
<item name="popupMenuStyle">@style/CustomTheme.ActionBar.PupopMenuStyle</item>
<item name="android:windowActionBarOverlay">true</item>
<item name="windowActionBarOverlay">true</item>
</style>
<style name="CustomTheme.ActionBar.PupopMenuStyle" parent="@style/Widget.AppCompat.Light.PopupMenu">
<item name="android:popupBackground">@drawable/action_bar_background</item>
</style>
...
</resources>
我的最小 SDK 是 11。
我做错了什么?
好吧,非常感谢 this post of scriptedpapers,我发现我应该使用 android:dropDownListViewStyle
,而不是 android:popupMenuStyle
。
(完全误解了这个概念,真可惜:)))
现在我的风格是这样的:
</resources><resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="CustomTheme" parent="@style/Theme.AppCompat.Light">
<item name="android:actionBarStyle">@style/CustomTheme.ActionBar</item>
<item name="actionBarStyle">@style/CustomTheme.ActionBar</item>
<item name="android:actionOverflowButtonStyle">@style/CustomTheme.ActionBar.ActionOverflowButtonStyle</item>
<item name="actionOverflowButtonStyle">@style/CustomTheme.ActionBar.ActionOverflowButtonStyle</item>
<item name="android:dropDownListViewStyle">@style/CustomTheme.ActionBar.DropDownListViewStyle</item>
<item name="dropDownListViewStyle">@style/CustomTheme.ActionBar.DropDownListViewStyle</item>
<item name="android:windowActionBarOverlay">true</item>
<item name="windowActionBarOverlay">true</item>
</style>
<style name="CustomTheme.ActionBar.DropDownListViewStyle" parent="@style/Widget.AppCompat.Light.ListView.DropDown">
<item name="android:background">@drawable/action_bar_background</item>
</style>
...
</resources>
我正在通过官方文档学习android。问题是,android:popupMenuStyle
不起作用。我尝试了所有关于此的发现,例如使用 android:actionBarWidgetTheme
,但其中 none 解决了我的问题。
这是我的风格:
<resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="CustomTheme" parent="@style/Theme.AppCompat.Light">
<item name="android:actionBarStyle">@style/CustomTheme.ActionBar</item>
<item name="actionBarStyle">@style/CustomTheme.ActionBar</item>
<item name="android:actionOverflowButtonStyle">@style/CustomTheme.ActionBar.ActionOverflowButtonStyle</item>
<item name="actionOverflowButtonStyle">@style/CustomTheme.ActionBar.ActionOverflowButtonStyle</item>
<item name="android:popupMenuStyle">@style/CustomTheme.ActionBar.PupopMenuStyle</item>
<item name="popupMenuStyle">@style/CustomTheme.ActionBar.PupopMenuStyle</item>
<item name="android:windowActionBarOverlay">true</item>
<item name="windowActionBarOverlay">true</item>
</style>
<style name="CustomTheme.ActionBar.PupopMenuStyle" parent="@style/Widget.AppCompat.Light.PopupMenu">
<item name="android:popupBackground">@drawable/action_bar_background</item>
</style>
...
</resources>
我的最小 SDK 是 11。 我做错了什么?
好吧,非常感谢 this post of scriptedpapers,我发现我应该使用 android:dropDownListViewStyle
,而不是 android:popupMenuStyle
。
(完全误解了这个概念,真可惜:)))
现在我的风格是这样的:
</resources><resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="CustomTheme" parent="@style/Theme.AppCompat.Light">
<item name="android:actionBarStyle">@style/CustomTheme.ActionBar</item>
<item name="actionBarStyle">@style/CustomTheme.ActionBar</item>
<item name="android:actionOverflowButtonStyle">@style/CustomTheme.ActionBar.ActionOverflowButtonStyle</item>
<item name="actionOverflowButtonStyle">@style/CustomTheme.ActionBar.ActionOverflowButtonStyle</item>
<item name="android:dropDownListViewStyle">@style/CustomTheme.ActionBar.DropDownListViewStyle</item>
<item name="dropDownListViewStyle">@style/CustomTheme.ActionBar.DropDownListViewStyle</item>
<item name="android:windowActionBarOverlay">true</item>
<item name="windowActionBarOverlay">true</item>
</style>
<style name="CustomTheme.ActionBar.DropDownListViewStyle" parent="@style/Widget.AppCompat.Light.ListView.DropDown">
<item name="android:background">@drawable/action_bar_background</item>
</style>
...
</resources>