ImageVIew状态为Lollipop版本不起作用?

时间:2017-05-10 09:31:12

标签: android android-imageview

我有一个ImageView,我想点击它来按它并更改图像。我使用了以下内容:

<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_enabled="true" android:drawable="@drawable/back"/>
<item android:state_pressed="true" android:drawable="@drawable/back_pressed"/>
</selector>

在SrcCompat上我把上面但没什么..

如何使用xml选择器执行此操作?

2 个答案:

答案 0 :(得分:0)

对于选择器未使用启用,只需使用按下或激活

<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/back" /> //for Default dont check state
<item android:drawable="@drawable/back_pressed" android:state_pressed="true" />
<item android:drawable="@drawable/back_pressed" android:state_selected="true" />

答案 1 :(得分:0)

您需要在ImageView xml android:clickable="true"

中添加属性
<ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="?attr/selectableItemBackgroundBorderless"
                android:clickable="true"
                android:src="@mipmap/your_drawable" />

创建可绘制的

<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/back" /> //for Default dont check state
<item android:drawable="@drawable/back_pressed" android:state_pressed="true" />
<item android:drawable="@drawable/back_pressed" android:state_selected="true" />