Ripples werden nicht mit selectableItemBackground als Vordergrund auf einer CardView mit einem Android 5.0-Gerät angezeigt

8

Ich betreibe dies auf einem Nexus 5. Hier ist ein Teil des Codes für meine CardView:

%Vor%

Und so bekomme ich das selectedItemDrawable:

%Vor%

Wenn ich auf die Karte tippe, wird die Ripple, die mit dem selectedItemDrawable kommen soll, nicht angezeigt (sie sieht genauso aus wie ohne den Vordergrundsatz). Ich benutze 5.0, also scheint das merkwürdig, da die appcompat-Dokumentation nur sagt, dass es nicht mit Pre-Lollipop-Geräten funktioniert. Weiß jemand, warum das so ist? Der Mindest-API-Level ist 16 und richtet sich an 21.

    
vemacs 14.12.2014, 21:23
quelle

1 Antwort

8

Es stellte sich heraus, dass ich meine Drawable-Instanz mit mehreren Kartenansichten teilte. Dies wurde behoben, indem eine neue Instanz mithilfe einer getSelectedItemDrawable-Methode zurückgegeben wurde:

%Vor%

Dann wird es programmatisch als Vordergrund gesetzt:

%Vor%

Jetzt bekomme ich den Ripple-Effekt auf 5.0.

    
vemacs 14.12.2014, 21:59
quelle