flutter修改字体
时间: 2024-08-06 15:00:37 浏览: 72
Flutter 常用系列demo代码
在Flutter中,你可以轻松地更改应用中的文本字体。以下是一些步骤和方法:
1. **全局设置**: 如果你想为整个应用程序设置统一的字体,可以在`main.dart`文件的`MaterialApp`或`WidgetsApp`中使用`textTheme`属性:
```dart
MaterialApp(
title: 'My App',
theme: ThemeData(
primaryTextTheme: ThemeData.textTheme.copyWith(
body1: TextStyle(fontFamily: 'CustomFont', fontSize: 16.0), // 使用自定义字体名
),
),
),
```
在这里,将`'CustomFont'`替换为你喜欢的字体名称。
2. **局部设置**: 如果只想在特定组件上更改字体,可以在对应的`TextStyle`或`Text` widget中指定:
```dart
Text(
'Hello Flutter',
style: TextStyle(
fontFamily: 'Roboto', // 或者 'CustomFont'
fontSize: 18.0,
),
),
```
3. **引入外部字体**: 如果想用非系统内置字体,你需要先安装它们。对于自定义字体制作,如`.ttf`或`.otf`格式,可以使用`font_awesome_flutter`、`custom_font`等包,然后引用它们:
- 安装包:`flutter pub add <package_name>`
- 在`pubspec.yaml`中添加字体路径(例如`assets/fonts/fontawesome.ttf`)
4. **动态加载字体**:有时可能需要根据条件加载不同字体,可以创建`FontAssetManager`并动态选择字体:
```dart
final fontAssetManager = FontAssetManager();
String selectedFont = 'Arial'; // 根据条件改变
return Text('Hello', style: fontAssetManager.font(style: TextStyle(fontSize: 16, fontFamily: selectedFont)));
```
完成上述步骤后,记得运行`flutter clean`清理缓存,并重启模拟器或设备查看更新后的字体效果。
阅读全文