Flutter: Beste Möglichkeit, Text in der Sekundärfarbe des aktuellen Themas einzufärben?

Erstellt am 11. Mai 2016  ·  3Kommentare  ·  Quelle: flutter/flutter

Materialdesign hat ein Konzept einer sekundären Textfarbe: https://www.google.com/design/spec/style/color.html#color -text-background-colors

Ich kann auf diese Farbe im Flattern zugreifen, indem ich sehr ausführlich bin: Theme.of(context).textTheme.caption.color . Ich möchte kein zusätzliches Styling (Gewicht, Schriftgröße) von caption oder display[1-4]. Die direkte Verwendung Colors.black54 ist nicht ideal, da es sich nicht an Theme-Änderungen anpassen würde. Gibt es einen weniger ausführlichen Weg, um die sekundäre Textfarbe des aktuellen Designs zu erhalten? Derzeit habe ich eine Funktion auf Paketebene erstellt, aber es scheint, als ob es einen besseren Weg geben sollte:

Color secondary(BuildContext context) =>
  Theme.of(context).textTheme.caption.color;

Dies erlaubt mir zu sagen

new TextStyle(color: secondary(context))

anstatt

new TextStyle(color: Theme.of(context).textTheme.caption.color)
api docs material design framework

Hilfreichster Kommentar

@Hixie Klingt so, als ob ThemeData dafür ein Feld haben sollte.

Alle 3 Kommentare

@Hixie Klingt so, als ob ThemeData dafür ein Feld haben sollte.

Einverstanden.

Die Sekundärfarbe ist die Akzentfarbe. Es gibt ein Feld auf ThemeData für die Akzentfarbe; wir sollten aus den TextStyle-Dokumenten oder so etwas darauf verweisen.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen