Il y a probablement quelque chose d'évident qui me manque. Existe-t-il une propriété one pouvant modifier la couleur de tout le texte d'une application Flutter?
La façon dont je le fais maintenant est, dans mon MaterialApp:
theme: ThemeData(
textTheme: Theme.of(context).textTheme.copyWith(
body1:
Theme.of(context).textTheme.body1.apply(color: Colors.pink),
body2:
Theme.of(context).textTheme.body2.apply(color: Colors.pink),
display1:
Theme.of(context).textTheme.display1.apply(color: Colors.pink),
display2:
Theme.of(context).textTheme.display2.apply(color: Colors.pink),
... // and so on
),
),
),
J'ai aussi essayé
textTheme: Theme.of(context).textTheme.apply(bodyColor: Colors.pink),
mais cela s'applique au texte déroulant, pas au texte normal. De même, displayColor
s'applique au texte appBar et à un texte InputDecoration, mais pas au texte normal. Je ne semble pas avoir de decorationText
dans mon code, je ne suis donc pas sûr de savoir à quoi il correspond.
Je remarque qu'il existe une propriété textSelectionColor
mais qui ne s'applique qu'aux widgets TextField
.
Je pense que TextTheme.apply
est ce que vous voulez. bodyColor
sera appliqué à headline
, title
, subhead
, button
, body1
et body2
. displayColor
sera appliqué à display1
à display4
et à caption
. Si vous spécifiez à la fois bodyColor
et displayColor
et utilisez la même valeur de couleur, les couleurs du texte seront modifiées dans tous les styles de texte.
Exemple:
final newTextTheme = Theme.of(context).textTheme.apply(
bodyColor: Colors.pink,
displayColor: Colors.pink,
);
Peut-être un peu tard ... mais vous pouvez utiliser ceci:
ThemeData(
primaryTextTheme: Typography(platform: TargetPlatform.iOS).white,
textTheme: Typography(platform: TargetPlatform.iOS).white,
)
Pour proposer une alternative qui semble fonctionner sans définir directement tous les styles de texte, vous devez modifier le style de la variable DefaultTextStyle
à l'emplacement de l'arborescence des widgets pour qu'il prenne effet
return DefaultTextStyle(
style: TextStyle(color: Colors.pink),
child: _YOUR_WIDGETS_
)