我终于发现了。
我设置fontFamily
如下。
@override
Widget build(BuildContext context) {
return GetMaterialApp(
theme: ThemeData(
fontFamily: 'YourAwesomeFontFamily',
),
...,
);
}
我还想更改AppBar
的textStyle
,因此我将其设置如下。
child: Scaffold(
appBar: AppBar(
title: const Text(
'Awesome Title'
style: TextStyle(
color: Colors.red,
fontWeight: FontWeight.bold,
),
),
),
...,
),
哇AppBar
的fontFamily
必须单独设置。
style: TextStyle(
fontFamily: 'YourAwesomeFontFamily', // <- this must go in
...,
),
这是为什么呢?
找来找去,TabBar
也是这样的吗?我设置labelStyle
是因为我想让Tab
的字体花哨,但是fontFamily
不见了。
child: TabBar(
labelStyles: TextStyle(
fontFamily: 'YourAwesomeFontFamily', // <- this must go in
color: Colors.red,
),
...,
),
但是什么呢?即使没有fontFamily
,Text
小部件也会在ThemeData
中设置fontFamily
。
Text(
'Applied fontFamily',
style(
// here is no fontFamily
color: Colors.red,
),
),
所以直到现在我才发现。
我现在很困惑
如果你能给予我点提示我会很感激的。
2条答案
按热度按时间ego6inou1#
以下是您需要的提示:
快乐编码...
wecizke32#
我找到原因了。
Text
小部件的TextStyle
具有inherit
属性。如果
inherit
是false
,它将覆盖TextStyle
,但默认值是true
。text.dart
但是
AppBar
的主题应用方式不同,它总是覆盖。app_bar_theme.dart