单击项目时,我的工具栏以及更确切地说是溢出菜单的样式存在问题。

我的xml样式文件是这样的:

 <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>
    <item name="colorControlHighlight">@color/cardViewColor</item>
    <item name="actionOverflowButtonStyle">@style/overflowButtonStyle</item>
    <item name="actionBarItemBackground">@drawable/background_action_item_toolbar</item>
    <item name="popupMenuStyle">@style/background_action_menu_overflow_textcolor</item>
</style>


 <style name="background_action_menu_overflow_textcolor" parent="Widget.AppCompat.Light.PopupMenu.Overflow">

    <item name="android:popupBackground">@drawable/background_action_menu_overflow_textcolor</item>
</style>


和我的选择器文件如下(带有balise):

<?xml version="1.0" encoding="utf-8"?>

<item android:drawable="@color/cardViewColor" android:state_pressed="true"
android:state_focused="true"

/>
<item android:drawable="@android:color/white"/>


但是,当我点击溢出菜单项时,就会显示文本按钮,但是当我点击它时,背景色未设置为“ cardViewcolor”(某种蓝色)。
谢谢你的帮助,
亚斯

最佳答案

当我单击溢出菜单中的文本按钮时,我发现通过xml属性可以更改背景颜色。

将此添加到主题:

<item name="listChoiceBackgroundIndicator">@drawable/background_action_menu_overflow_textcolor</item>


使用drawable定义如下:

<selector xmlns:android="http://schemas.android.com/apk/res/android">
   <item android:state_pressed="true"        android:drawable="@color/cardViewColor"/>
   <item android:drawable="@android:color/white"/>
</selector >


并在主题的定义中删除此行:

<item name="popupMenuStyle">@style/background_action_menu_overflow_textcolor</item>


而且有效,我希望这会有所帮助。
亚斯

10-08 03:33