我正在使用appcompat v22工具栏小部件
<android.support.v7.widget.Toolbar
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
android:popupTheme="@style/ThemeOverlay.AppCompat.Light">
</android.support.v7.widget.Toolbar>
我想要一个主题为主题的弹出菜单(带有黑色文本的白色背景)问题是弹出菜单总是变成黑暗主题(看起来它是从ThemeOverlay.AppCompat.Dark.ActionBar中挑选样式并设置android:popupTheme =&#34; @ style / ThemeOverlay.AppCompat。Light&#34;没有任何区别。
当我从app:theme移动到android:theme时出现了问题(如果我们需要使用appcompat v22版本,那就是推荐的那个
我尝试覆盖样式并在样式中设置许多值
<style name="ToolBarPopUpTheme" parent="ThemeOverlay.AppCompat.Light">
<item name="android:colorBackground">#ffffff</item>
<item name="android:textColor">#ffffff</item>
<item name="android:textColorPrimary">#ffffff</item>
<item name="android:colorForeground">#ffffff</item>
<item name="colorControlNormal">#ffffff</item>
<item name="android:windowBackground">#ffffff</item>
</style>
但是徒劳无功,想知道如何在ActionBar中获得一个轻量级的主题Popup菜单?
谢谢,
答案 0 :(得分:2)
你想回到app:popupTheme。
如果您查看Toolbar.java
的源代码,请在第263行看到以下内容。
setPopupTheme(a.getResourceId(R.styleable.Toolbar_popupTheme, 0));
在这种情况下,R是android.support.v7.appcompat.R
(请参阅第32行),因此Toolbar
使用app:
命名空间作为其属性,而不是android:
命名空间。< / p>
出于好奇,你在哪里读到你应该使用android:theme
属性?
答案 1 :(得分:1)
据我所知,你使用的是错误的父母风格。
尝试一下:
<style name="ToolBarPopUpTheme" parent="@style/ThemeOverlay.AppCompat.Light" />