In Android 5.0 erzeugt meine ListView einen Ripple-Effekt, wenn Sie auf einen Listeneintrag klicken. Gibt es eine Möglichkeit, diesen Effekt zu deaktivieren? Mit Blick auf die Dokumente sehe ich keine Möglichkeit (https://developer.android.com/reference/android/widget/ListView.html)Disable Ripple on ListView
Antwort
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" />
Ja, Sie können benutzerdefinierte Listenelemente mit ihrem Layout erstellen, in dem Sie die android:background
mit einem Zeichen ohne Ripple ändern müssen.
Das deckt nur die Welligkeit ... die meiste Zeit funktioniert, es sei denn, Sie benötigen einen halbtransparenten Hintergrund für Ihre Listenelemente –
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.
- 1. Disable Material Ripple auf Tablayout
- 2. nsIAlertService on alert click disable
- 3. ListVIEW on Google Glass
- 4. Disable Scroll down von ListView - Android
- 5. disable item in listview android java
- 6. disable keypress event on event change
- 7. Disable Listview Artikel klickt, wenn Benutzer nicht Premium-Benutzer ist
- 8. Android Ripple Hintergrund Farbe
- 9. Disable Element von ListView - Ich bekomme Ausnahme in meinem Code
- 10. Disable Multi-Select CheckBox-Funktionalität in einem ListView?
- 11. WInRT disable listview animation beim Nachbestellen von Elementen
- 12. Listenansicht einen benutzerdefinierten Ripple Selektor
- 13. Android Ripple-Effekt, die Ripple-Effekt-Overlay-Layer anpassen
- 14. Ändern der Farbe von Ripple-Effekt
- 15. Android: Ripple Hintergrund Programmatisch
- 16. NavigationView und Ripple-Effekt
- 17. Ripple Effect Richtungsproblem
- 18. Cordova 3 + Ripple
- 19. Ripple-Effekt wie auf design.google.com
- 20. PhoneGap/Cordova, Ripple-Emulator, CORS & JSONP
- 21. Ripple-Effekt auf benutzerdefinierter Navigationsschublade
- 22. Ripple-Effekt für Lollipop Ansichten
- 23. Ripple: lokale Datei nicht geladen
- 24. Halten Sie Ripple innerhalb Hub
- 25. Ripple-Effekt hinzufügen RecyclerView item
- 26. Recyclerview item click ripple effect
- 27. Ripple Tank in VB2010 Formen
- 28. Disable F5 in WebBrowser
- 29. Disable UIPickerView
- 30. Disable NHibernate
Das gibt mir einen hässlichen Lebkuchen-Stil gelben Hintergrund. – azurh
das entfernte die Welligkeit, stattdessen gab mir stattdessen einen gelben Hintergrund. Ich habe das stattdessen verwendet: 'android: listSelector =" @ android: color/transparent "' –