Aktualisieren: Überprüfen Sie my modification.
Hier ist eine Abhilfe:
Kopieren the source code von CardView
. Erstellen Sie dann Ihr eigenes Android-Bibliotheksmodul und verwenden Sie dieses Modul anstelle der Unterstützungsbibliothek. Nach diesem oder Kommentar Code in CardView entfernen wie unter:
static {
// if (Build.VERSION.SDK_INT >= 21) {
// IMPL = new CardViewApi21Impl();
// } else
if (Build.VERSION.SDK_INT >= 17) {
IMPL = new CardViewApi17Impl();
} else {
IMPL = new CardViewBaseImpl();
}
IMPL.initStatic();
}
Das heißt, Sie compat-Version verwenden CardViewApi17Impl
auch wenn api 21 oder höher ist. Dann können Sie eigene cardview_shadow_start_color
und cardview_shadow_end_color
definieren, um diese in Klasse RoundRectDrawableWithShadow
zu überschreiben. Darüber hinaus können Sie das anpassbarer machen.
Hoffnung kann jemandem helfen.
Noch finde ich die Lösung dafür. Bitte lassen Sie mich wissen, wenn Sie haben. –
@Maulikpatel Ich glaube, ich habe ein Projekt auf Github gefunden, aber ich erinnere mich nicht an den Namen. Was hast du gefunden? – Davidea
Es sollte dies sein: https://github.com/ZieIony/Carbon: In der Beschreibung steht "CardView mit echten Schatten und abgerundeten Ecken" aber ich habe es nicht ausprobiert. – Davidea