You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter项目中Android平台自定义字体不生效问题咨询

Flutter自定义字体Android不生效的解决办法

1. 修正pubspec.yaml的格式错误

YAML对缩进和格式要求严格,你的配置存在缩进问题,正确格式如下(注意层级缩进用2个空格):

fonts:
  - family: RobotoMono
    fonts:
      - asset: fonts/RobotoMono-Regular.ttf

错误的缩进会导致Android无法识别字体资源。

2. 核对字体文件路径与文件名

  • 确保fonts文件夹位于项目根目录下,且RobotoMono-Regular.ttf文件确实存在于该文件夹中
  • Android对文件名大小写敏感,需保证代码中填写的文件名与实际文件完全一致(包括大小写)——iOS不区分大小写所以能正常显示,这是跨平台的常见差异点

3. 清理缓存并重新构建

执行以下命令清除缓存后重新运行项目:

flutter clean
flutter pub get
flutter run

Android构建缓存可能导致新字体资源未被加载,清理后可解决这类问题。

4. 测试直接指定字体的效果

暂时绕过全局主题,在Text组件中直接指定字体,验证字体是否能被识别:

Text('测试自定义字体', style: TextStyle(fontFamily: 'RobotoMono'))

如果该组件能正常显示字体,说明全局ThemeData的配置可能被子组件的样式覆盖,需检查子组件是否设置了独立的fontFamily。

5. 确认Android资源配置未被手动修改

避免手动修改Android项目的AndroidManifest.xml或res目录下的资源配置,让Flutter自动处理assets资源的打包与加载。

内容的提问来源于stack exchange,提问作者arsalan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 10:22:15