📅  最后修改于: 2023-12-03 14:52:17.537000             🧑  作者: Mango
在 Flutter 中,小部件可以使用当前应用程序的主题颜色。但是如何在代码中获取该颜色呢?
Theme.of()
方法Theme.of()
方法可以帮助你获取小部件内的主题颜色。以下是一个示例:
Text(
'Hello World!',
style: TextStyle(
color: Theme.of(context).accentColor,
),
),
在上面的代码中,我们使用 Theme.of()
方法获取了 accentColor
,然后将其用作文本颜色。
如果你想在自定义小部件中获取主题颜色,可以使用以下方法:
class MyWidget extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Container(
color: Theme.of(context).primaryColor,
child: Text(
'Hello World!',
style: TextStyle(
color: Theme.of(context).accentColor,
),
),
);
}
}
在上面的代码中,我们在 Container
的颜色属性中使用 primaryColor
,在子 Text
小部件的样式属性中使用 accentColor
。
在 Flutter 中,使用 Theme.of()
方法可以轻松获取小部件内的主题颜色。记住,这个方法只能在 build()
方法内部调用,因为主题信息是在该方法内部创建并传递给小部件的。
以上是如何在 Flutter 中获取小部件内的主题颜色的介绍,希望对你有所帮助!