当我单击弹出菜单中的项目时,其TextView背景保持不变。
屏幕:http://i.stack.imgur.com/vtrGN.png
我使用工具栏:
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?attr/colorPrimary"
android:minHeight="@dimen/actionbar_height"
app:popupTheme="@style/PopupMenu"
app:theme="@style/Toolbar" />
使用弹出菜单的自定义主题:
<style name="Toolbar" parent="ThemeOverlay.AppCompat.Dark.ActionBar">
<item name="colorPrimary">@color/background</item>
<item name="android:height">@dimen/actionbar_height</item>
<item name="android:actionModeBackground">@color/background</item>
</style>
<style name="PopupMenu" parent="ThemeOverlay.AppCompat.Dark">
<item name="android:background">@color/background</item>
</style>
如何正确选择工作?
答案 0 :(得分:1)
我有同样的问题,尝试和错误我发现使用:
<item name="android:colorBackground">@color/background</item>
而不是
<item name="android:background">@color/background</item>
为我解决问题,我不知道是否达到了相同的结果,但至少没有显示uggly背景。
答案 1 :(得分:1)
ZoserLock提到的ColorBackground对我来说不是我必须要做的
<item name="android:background">@color/background</item>
<item name="android:drawSelectorOnTop">true</item>
我还发现android:backgroundTint与背景做同样的事情。
<item name="android:backgroundTint">@color/background</item>
<item name="android:drawSelectorOnTop">true</item>
注意:如果您使用自己的选择器使用selectableItemBackground并且您的选择器不透明,drawSelectorOnTop将无法正常工作,因为它将覆盖您的文本。我还没有找到一个我很满意的解决方案。