在android中的RecyclerView项目上启用按下效果

时间:2017-11-17 06:45:22

标签: android android-recyclerview recycler-adapter

我的RecyclerView包含数据列表:

<android.support.v7.widget.RecyclerView
        android:id="@+id/categoriesList"
        android:layout_width="368dp"
        android:layout_height="0dp"
        android:layout_marginBottom="8dp"
        android:layout_marginEnd="8dp"
        android:layout_marginStart="8dp"
        android:layout_marginTop="8dp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        android:clickable="true"
        android:focusable="true"
        android:foreground="?android:attr/selectableItemBackground"
        android:background="?android:selectableItemBackground"/>

当我点击此列表中的任何项目时,我等待按下效果。我没有单击处理程序,但在标准ListView中,任何单击元素都是可见的。而且我看起来没有任何反应

我需要接下来:

enter image description here

2 个答案:

答案 0 :(得分:1)

您需要将这些行添加到单行布局而不是recyclerview标记。

android:clickable="true"
android:focusable="true"
android:foreground="?android:attr/selectableItemBackground"
android:background="?android:selectableItemBackground"

答案 1 :(得分:0)

这是你的答案:How can I give an imageview click effect like a button on Android?

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_selected="true"   
        android:drawable="@drawable/img_down" />
    <item android:state_selected="false"   
        android:drawable="@drawable/img_up" />
</selector>
  

您可以自定义并根据您选择的颜色使用它。