10

我有一个左drawable分配给一个按钮以及一个背景drawable。我想提供一个选择器,以便当用户按下/聚焦/禁用按钮时,它的外观会发生变化。我用于左侧可绘制对象的图像是红色的“x”。

我希望在按下或禁用按钮时将其换成灰色的“X”。这可以使用选择器吗?

这是我尝试过的(适用于边框/背景图像,但不适用于左侧可绘制对象(显然)。

<?xml version="1.0" encoding="utf-8" ?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
  <item
      android:state_enabled="false"
      android:drawable="@drawable/GrayBorder" 
      android:drawableLeft="@drawable/GrayRemove"/>
  <item
      android:state_pressed="true"
      android:state_enabled="true"
      android:drawable="@drawable/GrayBorder" 
      android:drawableLeft="@drawable/GrayRemove" />
  <item
      android:state_focused="true"
      android:state_enabled="true"
       android:drawable="@drawable/GrayBorder" 
      android:drawableLeft="@drawable/GrayRemove" />
  <item
      android:state_enabled="true"
      android:drawable="@drawable/BlackBorder"
       android:drawableLeft="@drawable/Remove"/>
</selector>
4

1 回答 1

15

创建一个单独的选择器并尝试将其设置为drawableLeft您的Button.

于 2013-08-27T00:50:26.647 回答