Verläufe zur Laufzeit ändern

  • 2 Antworten
  • Letztes Antwortdatum
C

computer_freak

Fortgeschrittenes Mitglied
7
Halloechen!

Ich hab etwa 10 drawable's, die alle den gleichen linearen Verlauf benutzen mit @color/a1 und @color/a2.
Nun sollen diese farben a1/a2 vom Benutzer gesetzt werden koennen.
Zur auswahl gibt es noch b1/b2, c1/c2, d1/d2, e1/e1.
Wodurch in dein einzelnen drawables jeweils ein andersfarbiger verlauf ensteht.
Das problem ist nun: Wie koennte ich dies machen?
Mir ist keine Moeglichkeit bekannt, die farben eines Verlaufs zur laufzeit in die xml-drawables hineinzuladen.
Eine andere Ueberlegung ist, pro drawable mehrere versionen (mit farben a, b, c, d, e) zu machen. Das ist aber sicher nicht im Sinne der uebersichtlichkeit / gutes Stiles. Zudem waeren das mit (oben genannten) 10 (!) drawables 10*5 -> 50 xml dateien. Sehr unuebersichtlich / schlecht wartbar.

Welche guten moeglichkeiten gibt's hier?
 
GradientDrawable?
 
In meinen shapes sind das tief verschachtelte Gradients, deren farben zu aendern sind. Wie stellst du dir das mit der GradientDrawable vor?
 
Zurück
Oben Unten