Dopo essere stato alla ricerca di un po 'non sono stato in grado di trovare una risposta a questo ...Android Ripple Effect sovrascritti da Stato Selected
ho una vista riciclatore con gli oggetti che una volta selezionato un fondo rosso e testo bianco (in precedenza lo sfondo è bianco e il testo è nero). Per fare questo sto usando un selettore.
Ho recentemente tentato di aggiungere un effetto di ripple a questo, ma a meno che non clicchi a lungo sull'elemento, lo sfondo dell'oggetto va dritto al rosso senza il ripple. Suppongo che questo sia dovuto al fatto che lo stato del selettore stato_selezionato sovrascrive il ripple su sate_pressed?
Qualcuno sa se c'è un modo per aggirare questo? Ecco il codice di selezione che uso:
<?xml version="1.0" encoding="utf-8"?>
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
android:color="@android:color/holo_red_dark" >
<item>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:drawable="@drawable/ripple"
android:state_pressed="true"/>
<item
android:drawable="@android:color/holo_red_dark"
android:state_selected="true"/>
<item android:drawable="@android:color/white"/>
</selector>
</item>
</ripple>
Grazie in anticipo!
Per gli altri, quando si utilizza con i pulsanti, questo approccio elenco di livelli funziona, ma è necessario utilizzare state_activated – urSus
Anche se l'ondulazione funziona perfettamente, la voce di elenco non rimane selezionata. – Suleiman19
Funziona molto bene. Il colore dell'effetto a increspatura e il colore selezionato dovrebbero essere diversi in modo che l'utente possa vedere l'effetto a catena quando si seleziona l'elemento già selezionato. – hfann