【问题标题】:change color of menu button when pressed in android在android中按下时更改菜单按钮的颜色
【发布时间】:2017-06-11 18:49:37
【问题描述】:

我制作了具有我想要的颜色背景的自定义菜单项,当按钮按下该项目时,选择的按钮菜单变为另一种颜色,如下图所示:

它是我的自定义样式:

 <style name="Menu">
        <item name="android:colorBackground">@color/white</item>
        <item name="android:textColor">@color/colorAccent</item>
        <item name="android:background">@drawable/item_bg_menu</item>
        </style>

item_bg_menu:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">

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

    <item
        android:state_pressed="true"
        android:drawable="@color/gray" />

</selector>

这是我使用菜单的方式:

app:popupTheme="@style/Menu"

【问题讨论】:

标签: android android-styles


【解决方案1】:

最好和最简单的方法是制作自己的风格

在这种情况下,样式名称是菜单

<style name="Menu">
    <item name="android:colorBackground">@color/gray</item>   //color of background menu
    <item name="android:textColor">@color/white</item>       //text color
    <item name="android:listSelector">@drawable/item_bg_menu</item>     //this is for when button press color changed
    </style>

item_bg_menu

<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:state_pressed="true" android:drawable="@color/black" />  //color when button press

</selector>

如果您想在收费栏中使用该菜单,只需添加此app:popupTheme="@style/Menu"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-06-05
    • 1970-01-01
    • 2019-04-14
    • 2013-07-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-13
    相关资源
    最近更新 更多