我希望我的观点能够提供关于触摸的反馈,所以我做了
<View
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="?attr/selectableItemBackground" />
然而,当我触摸我的观点时,我没有看到任何反馈。
对于我的具体情况,我有一个包含物品的RecyclerView,我希望每个项目的视图都能提供反馈。因此,在项目的.xml
中,我将背景设置为android:background="?attr/selectableItemBackground"
。还有更多吗?
答案 0 :(得分:0)
查看必须是可点击的,所以添加android:clickable =&#34; true&#34;。设置onClickListener时会自动添加。
如果这没有帮助,那么分享您的.xml资源文件会很不错。这取决于其中指定的州。 http://developer.android.com/reference/android/graphics/drawable/StateListDrawable.html
根据评论进行编辑:
Api&lt; = 19:
<selector xmlns:a="http://schemas.android.com/apk/res/android">
<item
a:drawable="@color/gray230"
a:state_pressed="true" />
</selector>
Api&gt; 19(触摸反馈仅限于查看边界)
<ripple xmlns:a="http://schemas.android.com/apk/res/android"
a:color="@color/gray230">
<item
a:id="@android:id/mask"
a:drawable="@android:color/black" />
<item>
<selector>
<item
a:drawable="@color/gray230"
a:state_selected="true"/>
</selector>
</item>
</ripple>
Api&gt; 19(没有视界限制)
<ripple xmlns:a="http://schemas.android.com/apk/res/android"
a:color="@color/gray230">
</ripple>
这就是我正在使用的。通常我将这些资源文件设置为后台资源。当然,这也可以通过代码来完成。