你能改变 flutter 文本主题吗?
Can you change flutter text theme?
如果在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),
如何使 'MY STRING' 成为与 subtitle1 主题颜色不同的颜色,同时保持主题数据的其他属性,例如字体粗细、系列和大小等?
您可以使用 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
如果在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),
如何使 'MY STRING' 成为与 subtitle1 主题颜色不同的颜色,同时保持主题数据的其他属性,例如字体粗细、系列和大小等?
您可以使用 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