2014-11-29 9 views

Antwort

24

Sie können den Listenselektor mithilfe der Eigenschaft android:listSelector entfernen oder ersetzen. Die Standard-Listenauswahl unter Material ist ?android:attr/selectableItemBackground, die eine begrenzte Ripple ist.

<ListView 
    ... 
    android:listSelector="@drawable/my_list_selector" /> 

Um vollständig zu deaktivieren Wähler können Sie ein verwenden @null oder @android:color/transparent (funktioniert besser für einige Android-Versionen) Wert, wie folgend:

<ListView 
    ... 
    android:listSelector="@android:color/transparent" /> 
+8

Das gibt mir einen hässlichen Lebkuchen-Stil gelben Hintergrund. – azurh

+1

das entfernte die Welligkeit, stattdessen gab mir stattdessen einen gelben Hintergrund. Ich habe das stattdessen verwendet: 'android: listSelector =" @ android: color/transparent "' –

0

Ja, Sie können benutzerdefinierte Listenelemente mit ihrem Layout erstellen, in dem Sie die android:background mit einem Zeichen ohne Ripple ändern müssen.

+1

Das deckt nur die Welligkeit ... die meiste Zeit funktioniert, es sei denn, Sie benötigen einen halbtransparenten Hintergrund für Ihre Listenelemente –

17

Versuchen:

<ListView 
... 
    android:listSelector="@android:color/transparent" /> 

Dies wird deaktivieren jeder visuelle Effekt des Berührens. Nicht sehr gut für den Benutzer, könnte aber unter besonderen Umständen nützlich sein.