material-components / material-components/material-components-android

[MaterialShapeDrawable] Custom shadows with Paint's `setShadowLayer`

Offen
#2,117 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

feature request Feature: Shape
Vorherrschende Sprache
Java
Sterne
17.4k
Forks
3.2k
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

In my project i use Paint.setShadowLayer(float radius, float dx, float dy, @ColorInt int shadowColor) inside my custom Drawable, for custom shadows. I want to switch to MaterialShapeDrawable, but i can't configure MaterialShapeDrawable's Paint with this custom values.

I think it would be great, if there will be function `MaterialShapeDrawable.setPaintShadowLayer(float radius, float dx, float dy, @ColorInt int shadowColor)' which i can use for custom shadow configuration.

Maybe there is a possibility to select by brute force applicable values with shadowCompatOffset/shadowCompatRotation/shadowCompatRadius for my case, but in this case MaterialShapeDrawable will use bitmap for shadows.

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne damit, MaterialShapeDrawable zu finden und zu prüfen, wie dessen Paint sowie die Werte shadowCompatOffset, shadowCompatRotation und shadowCompatRadius angewendet werden. Vergleiche dieses Verhalten mit Paint.setShadowLayer und bestimme das erwartete API- und Rendering-Verhalten. Die Aufgabe ist erledigt, wenn benutzerdefinierter Radius, Offsets und Farbe konfiguriert werden können, ohne auf Bitmap-Schatten angewiesen zu sein, und das daraus resultierende Verhalten abgedeckt ist.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
android, java
Bereich
mobile
Issue-Typ
Feature
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.