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

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

Aperta
#2,117 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

feature request Feature: Shape
Lingua principale
Java
Stelle
17.4k
Fork
3.2k
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

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.

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Inizia individuando MaterialShapeDrawable e verificando come vengono applicati il relativo Paint e i valori shadowCompatOffset, shadowCompatRotation e shadowCompatRadius. Confronta questo comportamento con Paint.setShadowLayer e determina il comportamento previsto dell’API e del rendering. L’attività è completata quando è possibile configurare raggio, offset e colore personalizzati senza dipendere da ombre bitmap, con una copertura del comportamento risultante.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
android, java
Ambito
mobile
Tipo di issue
Funzionalità
Difficoltà
3/5
Tempo stimato
1-2 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.