Форма не отображается в ImageButton с помощью селектора

Я пытаюсь дать эффект клика в кнопке изображения через селектор, и я использовал форму. Но проблема в том, когда я использую селектор с Android: фон только небольшая часть в левом верхнем углу становится оранжевым.

селектор xml

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

<item android:state_pressed="true" >
    <shape android:shape="rectangle">
        <solid android:color="@color/orange"/>
    </shape>
</item>

</selector>

и мое изображение XML

<ImageButton
   style="@style/icon"
   android:background="@drawable/icon_selector"
   android:src="@drawable/fear_96"
   android:scaleType="fitXY" />

Но когда я меняю селектор с фона на src, тогда ничего не происходит

<ImageButton
  style="@style/icon"
   android:background="@drawable/fear_96"
   android:src="@drawable/icon_selector"
    android:scaleType="fitXY"/>

Пожалуйста, помогите, как я могу дать эффект клика, используя селектор?

2 ответа

Решение

Используйте ниже изменение кода android:color вandroid:drawable и вы можете использовать цвет как рисуемое увидеть изображение.

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

установить в качестве фона

<ImageButton
   style="@style/icon"
   android:background="@drawable/icon_selector"
   android:scaleType="fitXY" />

В icon_selector XML

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

И в вашем ImageButton

<ImageButton
   style="@style/icon"
   android:background="@drawable/icon_selector"
   android:scaleType="fitXY" />
Другие вопросы по тегам