1

如果主题在 main.dart 中设置为

return MaterialApp(
  title: 'MY APP',
  theme: ThemeData(
    primarySwatch: Colors.blue,
    fontFamily: 'Cabin',
    textTheme: TextTheme(
      headline1: TextStyle(
        fontFamily: 'Raleway',
        color: Colors.black,
        fontWeight: FontWeight.w600,
        fontSize: 18,
      ),
      subtitle1: TextStyle(
        fontFamily: 'Raleway',
        color: Colors.black54,
        fontWeight: FontWeight.w600,
        fontSize: 16,
      ),
    ),
  ),

我正在使用主题作为

Text('MY STRING',
    style: Theme.of(context).textTheme.subtitle1),

如何使“我的字符串”成为与 subtitle1 主题颜色不同的颜色,同时保留主题数据的其他属性,例如字体粗细、系列和大小等?

4

1 回答 1

3

您可以使用 de 方法copyWith(color: your_color)来更改 TextTheme 的属性。

例子:

Text('MY STRING',
  style: Theme.of(context).textTheme.subtitle1
    .copyWith(color: Colors.red),
)

文档参考:https ://api.flutter.dev/flutter/material/TextTheme/copyWith.html

于 2021-03-12T18:50:12.717 回答