Flutter 如何更改颤振应用程序的默认字体系列
如何更改应用程序的每个文本以使用特定字体?我可以使用Flutter 如何更改颤振应用程序的默认字体系列,flutter,fonts,themes,Flutter,Fonts,Themes,如何更改应用程序的每个文本以使用特定字体?我可以使用TextStyle()单独更改它们,但如何将我的应用程序默认为特定字体?您能告诉我如何操作吗?您可以通过以下步骤更改颤振应用程序的默认字体系列: 1。将字体文件添加到项目文件夹中。说项目文件夹>资产>字体>hind 2。在项目的pubspec.yaml文件中将具有样式的字体文件的字体系列声明为(示例): 在主类文件的MaterialApp小部件中,将默认字体系列定义为: 颤振可使用自定义字体,您可以将自定义字体应用于整个应用程序或单个小部件。
TextStyle()
单独更改它们,但如何将我的应用程序默认为特定字体?您能告诉我如何操作吗?您可以通过以下步骤更改颤振应用程序的默认字体系列:
1。将字体文件添加到项目文件夹中。说项目文件夹>资产>字体>hind
2。在项目的pubspec.yaml
文件中将具有样式的字体文件的字体系列声明为(示例):
MaterialApp
小部件中,将默认字体系列定义为:颤振可使用自定义字体,您可以将自定义字体应用于整个应用程序或单个小部件。此配方通过以下步骤创建使用自定义字体的应用程序: 1。导入字体文件 要使用字体,请将字体文件导入到项目中。通常的做法是将字体文件放在flatter项目根目录下的
font
或assets
文件夹中
例如,要将Raleway和Roboto Mono字体文件导入到项目中,文件夹结构可能如下所示:
awesome_app/
fonts/
Raleway-Regular.ttf
Raleway-Italic.ttf
RobotoMono-Regular.ttf
RobotoMono-Bold.ttf
2。在pubspec中声明字体
一旦你确定了一种字体,告诉flifter在哪里可以找到它。您可以通过在pubspec.yaml
文件中包含字体定义来实现这一点
flutter:
fonts:
- family: Raleway
fonts:
- asset: fonts/Raleway-Regular.ttf
- asset: fonts/Raleway-Italic.ttf
style: italic
3。将字体设置为默认字体
对于如何将字体应用于文本,您有两个选项:作为默认字体或仅在特定小部件中使用
要使用字体作为默认字体,请将fontFamily
属性设置为应用程序主题的一部分。提供给fontFamily
的值必须与pubspec.yaml
中声明的family
名称匹配
MaterialApp(
title: 'Custom Fonts',
// Set Raleway as the default app font.
theme: ThemeData(fontFamily: 'Raleway'),
home: MyHomePage(),
);
4。在特定小部件中使用字体
Text(
'Roboto Mono sample',
style: TextStyle(fontFamily: 'RobotoMono'),
);
完整示例
公开发行
主飞镖
此链接可能会解决您的问题:
name: custom_fonts
description: An example of how to use custom fonts with Flutter
dependencies:
flutter:
sdk: flutter
dev_dependencies:
flutter_test:
sdk: flutter
flutter:
fonts:
- family: Raleway
fonts:
- asset: fonts/Raleway-Regular.ttf
- asset: fonts/Raleway-Italic.ttf
style: italic
- family: RobotoMono
fonts:
- asset: fonts/RobotoMono-Regular.ttf
- asset: fonts/RobotoMono-Bold.ttf
weight: 700
uses-material-design: true
import 'package:flutter/material.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Custom Fonts',
// Set Raleway as the default app font.
theme: ThemeData(fontFamily: 'Raleway'),
home: MyHomePage(),
);
}
}
class MyHomePage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
// The AppBar uses the app-default Raleway font.
appBar: AppBar(title: Text('Custom Fonts')),
body: Center(
// This Text widget uses the RobotoMono font.
child: Text(
'Roboto Mono sample',
style: TextStyle(fontFamily: 'RobotoMono'),
),
),
);
}
}