pubspec.yaml配置字体后Flutter无法正常显示字体问题咨询
Flutter字体不显示的排查与解决
以下是针对你配置的字体问题的排查点和修复方案:
1. 修正配置的完整性与缩进
你的配置缺少字体对应的weight属性,Flutter无法区分粗体和常规体,同时要严格遵守YAML的缩进规则(统一用2空格,避免混用Tab)。修正后的配置如下:
fonts: - family: Amatic fonts: - asset: assets/fonts/Amatic-Regular.ttf weight: 400 - asset: assets/fonts/Amatic-Bold.ttf weight: 700
2. 验证文件路径准确性
- 确认
assets/fonts/目录存在于项目根目录下,字体文件名和路径完全匹配(注意大小写,iOS/macOS环境对路径大小写敏感)。 - 如果字体目录是
lib/assets/fonts结构,需将asset路径修正为lib/assets/fonts/Amatic-Bold.ttf这类格式。
3. 执行pub get加载资源
修改pubspec.yaml后,必须在终端执行以下命令,确保Flutter加载新的字体资源:
flutter pub get
4. 正确在代码中调用字体
在Text组件中指定fontFamily时,要和配置里的family值完全一致,同时通过weight对应不同字重:
Text( "测试Amatic字体", style: TextStyle( fontFamily: 'Amatic', fontWeight: FontWeight.w400, // 对应Regular字体 // fontWeight: FontWeight.w700, // 对应Bold字体 fontSize: 24, ), )
5. 清理缓存并重启项目
如果以上步骤无效,尝试:
- 清理Flutter缓存:
flutter clean - 重启IDE和模拟器/真机,重新运行项目
内容的提问来源于stack exchange,提问作者syedmoin Hussain
相关产品推荐
相关产品推荐

