当前位置: 首页 > 知识库问答 >
问题:

在ActionMode期间更改溢出菜单的主题ActionBar-actionBarPopupTheme和popupTheme不起作用

印振国
2023-03-14

通过参考Android 5.0Lollipop(与AppCompat)中的样式操作模式操作栏和如何为执行事项的弹出窗口设置自定义颜色,包括溢出菜单?,我倾向于将溢出菜单更改为浅色主题(黑色文本,白色背景)

我使用

<style name="Widget.ActionMode" parent="@style/Widget.AppCompat.ActionMode">
    <!-- RED COLOR -->
    <item name="background">@drawable/dummy</item>

    <!-- Hope to get light theme overflow menu. But doesn't work. -->
    <item name="actionBarPopupTheme">@style/ThemeOverlay.AppCompat.Light</item>
    <item name="popupTheme">@style/ThemeOverlay.AppCompat.Light</item>
    <item name="android:actionBarPopupTheme">@style/ThemeOverlay.AppCompat.Light</item>
    <item name="android:popupTheme">@style/ThemeOverlay.AppCompat.Light</item>
</style>

但是,我仍然得到了一个黑暗的主题菜单。

知道出了什么问题吗?注意,将ActionMode的背景更改为红色效果很好。

我的应用主题是主题。AppCompat。光。NoActionBar,带

以下是我的应用程序使用的样式。

<!-- Base application theme. -->
<style name="Theme.Noteplus.Base.Brown" parent="Theme.AppCompat.Light.NoActionBar">

    <!-- Custom action mode style -->
    <item name="actionModeStyle">@style/Widget.ActionMode</item>

    <!-- For action mode -->
    <item name="windowActionModeOverlay">true</item>

为了显示ActionMode ActionBar,我使用了这种技术——在工具栏上显示ActionMode


共有3个答案

夏宏旷
2023-03-14
 <item name="actionOverflowMenuStyle">@style/PopupMenu.Example</item>

 <style name="PopupMenu.Example" parent="@style/Widget.AppCompat.Light.PopupMenu">
    <item name="android:popupBackground">@color/popup_menu</item>
</style>

关键字“溢出”。您只需要不同的菜单(actionOverflowMenuStyle)。

曹德明
2023-03-14

我从

<!-- Base application theme. -->
<style name="Theme.Noteplus.Base.Brown" parent="Theme.AppCompat.Light.NoActionBar">

    <item name="actionModeStyle">@style/Widget.ActionMode</item>

    <item name="windowActionBar">false</item>
    <item name="windowNoTitle">true</item>

<!-- Base application theme. -->
<style name="Theme.Noteplus.Base.Brown" parent="Theme.AppCompat.Light.DarkActionBar">

    <item name="actionModeStyle">@style/Widget.ActionMode</item>

    <item name="windowActionBar">false</item>
    <item name="windowNoTitle">true</item>

解决问题。(不完全确定背后的原因)

慕容聪
2023-03-14
<style name="PopupMenu"  parent="ThemeOverlay.AppCompat.Dark">

这会使文本变黑:

<item name="actionMenuTextColor">#000</item>

这会改变背景颜色

<item name="android:popupBackground">#fff</item>

如果有什么变化,请告诉我!

 类似资料:
  • 大家好,我正在开发示例Android应用程序,我正在其中尝试在actionbar中显示菜单项。但我的操作栏总是显示溢出菜单,即使只有一个菜单项。它没有在操作栏中显示我的菜单项图像。我以以下方式实施了这一点 我做错什么了吗?我需要一些帮助。非常感谢。

  • 我的应用程序有一个自定义的分割动作栏主题(是的,我使用的是AcionBar Sherlock),顶部是深色,底部是浅色。该应用程序设置为在横向模式下检测设备方向并移除拆分激活栏(只显示顶部的操作栏)。在某些活动中,我有一个由三个垂直点指示的溢出菜单。我想在纵向模式下将溢出菜单图标设置为深色可绘制,然后在横向模式下设置为浅色可绘制。是否有方法更改活动类中的溢出菜单图标?

  • 是否可以更改操作栏上溢出按钮(3个垂直点)的颜色?如果是,我们如何做到这一点?我没有找到溢出按钮的任何样式。 谢啦

  • 我的应用程序有问题。。。溢出菜单不可见!我可以点击手机的右上角,菜单项就会显示出来,但这三个点并没有显示出来。 这是我的xml: Java代码: 我在StackOverflow上尝试了其他解决方案,但它们似乎都不起作用。我试过在两部手机上运行这个应用程序,都是Android版本 更新:我尝试在应用程序中添加导航抽屉。再次,当我点击抽屉按钮应该在的一侧时,菜单会显示出来,但按钮不可见。。。 更新2:

  • 我正在使用v7 AppCompat21库在Lollipop之前的设备上使用新的素材样式。我的styles.xml如下所示: 我正在尝试更改操作栏上的文本颜色。但无论我为textColorPrimary或TextColorPrimaryYinVerse放了什么,颜色总是白色的。如果我从Theme.AppCompat继承,我可以重写“TextColorPrimary”,如果我从Theme.AppCom

  • 我使用onCreateOptionsMenu创建了一个溢出菜单,但该菜单几乎完全位于屏幕之外。我尝试过显式设置(如操作栏菜单显示屏幕中的建议),但这并没有解决我的问题。我也不想遵循使用旧主题的建议(如在ICS-Menu item text Cutoff?)。 XML是 我做错了什么?