Desidero che gli elementi in un RecyclerView abbiano feedback tattili o increspature quando premuti, ma sembrano non funzionare, e penso che sia dovuto alla casella di controllo.RecyclerLa voce non mostra increspature/feedback tattile quando l'articolo ha una casella di controllo
L'ondulazione viene visualizzata solo quando si preme a lungo, ma una semplice pressione non lo mostra.
Qualcuno potrebbe aiutarmi a risolverlo? Grazie in anticipo.
PD: stavo usando un ListView e il genitore del layout dell'articolo era un LinearLayout. Le increspature stavano funzionando bene. Dopo essere passati a RecyclerView, le increspature degli oggetti non funzionano. Ho provato di nuovo con LinearLayout, ma ancora non funziona.
Ecco il file di layout
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
android:id="@+id/requestCard"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?android:attr/selectableItemBackground"
android:clickable="true"
android:focusable="true"
android:descendantFocusability="blocksDescendants"
android:orientation="horizontal">
<ImageView
android:id="@+id/imgIcon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:adjustViewBounds="true"
android:maxHeight="64dp"
android:maxWidth="64dp"
android:padding="@dimen/lists_padding"
android:src="@drawable/ic_launcher"
tools:ignore="ContentDescription"/>
<TextView
android:id="@+id/txtName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_toEndOf="@+id/imgIcon"
android:layout_toRightOf="@+id/imgIcon"
android:ellipsize="end"
android:maxLength="@integer/request_text_length"
android:maxLines="1"
android:padding="@dimen/lists_padding"
android:textSize="@dimen/abc_text_size_large_material"
tools:text="App Name"/>
<CheckBox
android:id="@+id/chkSelected"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:clickable="false"
android:padding="@dimen/lists_padding"/>
</RelativeLayout>
Aggiungi android: descendantFocusability = "blocksDescendants" in l'elemento principale del tuo articolo. –
@GabrieleMariotti l'ha già fatto. Continua a non funzionare. File di layout aggiornato –
Non ne sono del tutto sicuro, ma ciò potrebbe accadere perché le viste nel gruppo di vista coprono l'effetto a catena. Quindi è lì, ma non puoi vederlo. Così ho finito per aggiungere una vista extra semplice (con larghezza e altezza match_parent) appositamente per il ripple. Potresti provare. –