2015-10-20 124 views
1

我希望我的意见,能够给触摸反馈,所以我做查看反馈onTouch

<View 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:background="?attr/selectableItemBackground" /> 

不过,我看不出有任何反馈,当我摸我的看法。

对于我的具体情况,我有一个带有物品的RecyclerView,并且我希望每个物品的视图都能提供反馈。所以在该项目的.xml中,我将背景放置为android:background="?attr/selectableItemBackground"。还有更多吗?

+0

view.setColorFilter(0xFFFF0000,PorterDuff.Mode.MULTIPLY); – dex

+0

@dex谢谢,我明白我做错了什么。你知道如何将灰暗的灰色改为我选择的东西(在xml中)。 – learner

+0

您需要编写自己的选择器,然后将其设置为背景。有些东西是这样的<?xml version =“1.0”encoding =“utf-8”?> <选择器xmlns:android =“http://schemas.android.com/apk/res/android”> dex

回答

0

视图必须是可点击的,所以添加android:clickable =“true”。当您设置onClickListener时,会自动添加。

如果这样做无济于事,那就分享你的.xml资源文件吧。这取决于它需要指定哪种状态。 http://developer.android.com/reference/android/graphics/drawable/StateListDrawable.html

编辑基于评论:

阿比< = 19:

<selector xmlns:a="http://schemas.android.com/apk/res/android"> 
<item 
    a:drawable="@color/gray230" 
    a:state_pressed="true" /> 

</selector> 

API> 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> 19(无查看边界限制)

<ripple xmlns:a="http://schemas.android.com/apk/res/android" 
a:color="@color/gray230"> 
</ripple> 

这就是我正在使用的。通常我将这些资源文件设置为背景资源。当然,这也可以用代码来完成。

+0

谢谢。我在卡上设置背景。谢谢。那么,如何将灰色变成更好的东西,你知道吗? – learner

+0

我写过一次。 API <= 19和之后不同。现在在我所在的地方深夜,但明天我会检查它并写下整个.xml文件 –

+0

查看更新后的.xml详细信息 –