0

我有一个简单的按钮,当你将鼠标悬停在它上面时,我试图让它改变颜色。我在 Eclipse 上使用 android 模拟器,但 android:state_hovered="true" 不起作用。

任何帮助将不胜感激,谢谢。

编辑:

我已经有了这个代码,我可以让它和它一起工作吗?

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

    <item android:state_focused="true">
        <shape>
            <gradient
                android:endColor="@color/darkish_blue"
                android:startColor="@color/darkish_blue"
                android:angle="270" />
            <stroke
                android:width="2dp"
                android:color="@color/black" />
            <corners
                android:radius="6dp" />
            <padding
                android:left="10dp"
                android:top="10dp"
                android:right="10dp"
                android:bottom="10dp" />
        </shape>
    </item>

    <item android:state_pressed="true" >
        <shape>
            <gradient
                android:startColor="@color/dark_blue"
                android:endColor="@color/dark_blue"
                android:angle="270" />
            <stroke
                android:width="2dp"
                android:color="@color/black" />
            <corners
                android:radius="6dp" />
            <padding
                android:left="10dp"
                android:top="10dp"
                android:right="10dp"
                android:bottom="10dp" />
        </shape>
    </item>

    <item android:state_selected="false" >
        <shape>
            <gradient
                android:endColor="@color/light_blue"
                android:startColor="@color/light_blue"
                android:angle="270" />
            <stroke
                android:width="2dp"
                android:color="@color/black" />
            <corners
                android:radius="6dp" />
            <padding
                android:left="10dp"
                android:top="10dp"
                android:right="10dp"
                android:bottom="10dp" />
        </shape>
    </item>

    <item android:state_selected="true" >
        <shape>
            <gradient
                android:endColor="@color/medium_blue"
                android:startColor="@color/medium_blue"
                android:angle="270" />
            <stroke
                android:width="2dp"
                android:color="@color/black" />
            <corners
                android:radius="6dp" />
            <padding
                android:left="10dp"
                android:top="10dp"
                android:right="10dp"
                android:bottom="10dp" />
        </shape>
    </item>

</selector>

按下状态正在工作,但选中和悬停不起作用,。

4

1 回答 1

1

创建一个选择器 selector.xml

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/button_pressed_yellow"
          android:state_pressed="true" />
    <item android:drawable="@drawable/button_focused_orange"
          android:state_focused="true" />
    <item android:drawable="@drawable/button_normal_green" />
</selector>

设置按钮的背景

android:background="@drawable/selector"
于 2013-09-11T11:01:02.233 回答