0

我想在我的应用程序中普遍更改应用程序栏字体,但我没有找到我正在寻找的任何合适的答案。
有没有办法在 MaterialApp 中使用 ThemeData 和主题来全局应用主题?

我不想像下面这样应用 TextStyle 属性

appBar: AppBar(
            title: Text('Title ',style: TextStyle(fontFamily: 'YOUR_FONT_FAMILY'),
            ),
          ),

如果没有,更改应用栏字体的最佳方法是什么?

PS这是我在 StackOverflow 上的第一篇文章。

4

2 回答 2

0
appBarTheme: AppBarTheme(
      textTheme: ThemeData.light().textTheme.copyWith(
            headline6: TextStyle(
              fontFamily: 'OpenSan',
              fontSize: 20,
              fontWeight: FontWeight.bold,
            ),
          ),
    ),

调用 Theme.of() 后,我收到错误“接收器可以为空......”并通过放置“!”得到修复 在下面的代码中

title: Text(
      'Title Text',
      style: Theme.of(context).appBarTheme.textTheme!.headline6,
    ),
于 2022-02-13T10:11:43.540 回答
0

你应该使用AppBarTheme。请找到下面的代码

在 MaterialApp 中像这样使用,

MaterialApp(
      title: 'Test App',
      debugShowCheckedModeBanner: false,
      theme: ThemeData(
        appBarTheme: AppBarTheme(
          textTheme: ThemeData.light()
              .textTheme
              .copyWith(
                headline6: TextStyle( // instead of title use can use display as well
                  fontFamily: 'Lobster',
                ),
              )
              .apply(
                fontFamily: 'Lobster',
              ),
        ),
      ),
    );
AppBar(
      title: Text('App bar', 
                 style: Theme.of(context).appBarTheme.textTheme. headline6,
             ),
    );
于 2020-12-28T15:39:39.577 回答