Wie würde man die Akzentfarbe, die in Stilen wie unten festgelegt ist, programmgesteuert abrufen?
<item name="android:colorAccent">@color/material_green_500</item>
Wie würde man die Akzentfarbe, die in Stilen wie unten festgelegt ist, programmgesteuert abrufen?
<item name="android:colorAccent">@color/material_green_500</item>
Antworten:
Sie können es folgendermaßen aus dem aktuellen Thema abrufen:
quelle
Das hat auch bei mir funktioniert:
quelle
quelle
Ich habe eine statische Methode für eine Utils-Klasse, um die Farben aus dem aktuellen Thema zu erhalten. Meistens ist colorPrimary, colorPrimaryDark und akzentfarbe, aber Sie können noch viel mehr bekommen.
quelle
Für diejenigen unter Ihnen, die Kotlin verwenden
quelle
Hier ist meine Meinung dazu:
Verwendung:
quelle
String.format()
hilft zu erklären, wie der negative ganzzahlige Wert in eine hexadezimale Farbzeichenfolge konvertiert wird.Kotlin-Lösung:
quelle