Flutter ThemeData不适用于文本

5 dart flutter

码:

@override
Widget build(BuildContext context) {
  return Theme(
    data: ThemeData(textTheme: TextTheme(body1: TextStyle(fontSize: 40))),
    child: Text("Hello World!"), // size not changing
  );
}
Run Code Online (Sandbox Code Playgroud)

但是当我使用

data: ThemeData(textTheme: TextTheme(body1: TextStyle(fontSize: 40))),
Run Code Online (Sandbox Code Playgroud)

在我MaterialApp的,theme然后Text改变尺寸。


PS:我知道我可以Text通过使用style:属性来提供大小,但是我想知道为什么我的代码没有改变Text字体大小。

Rém*_*let 6

Text不使用Theme主题是特定于材料设计的,而文本是通用的。

什么文本用途是DefaultTextStyle,其通过编辑MaterialApp(或一些其他部件如AppBar)从值主题

以下应该工作:

DefaultTextStyle(
  style: TextStyle(fontSize: 40),
  child: Text("Hello World"),
);
Run Code Online (Sandbox Code Playgroud)