我试图通过选择器在图像按钮中给出点击效果,我使用了形状。但问题是当我使用选择器与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"/>
请帮助我如何使用选择器提供点击效果?
答案 0 :(得分:1)
使用以下代码更改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" />
答案 1 :(得分:0)
在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" />