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

Bare React Native iOS端AstroSpace自定义字体不生效问题求助

AstroSpace自定义字体在React Native iOS项目不生效的解决方案

你之前成功配置过Montserrat,说明基础配置逻辑没问题,问题大概率出在AstroSpace字体的内部名称和你代码里写的fontFamily不匹配——很多非Google Fonts的字体,文件名和实际的字体内部家族名并不一致。

第一步:确认字体的真实内部名称

别盯着文件名纠结,必须查字体本身的正式家族名:

  • 最简单的方式:在Mac上双击你的AstroSpace.ttf文件,打开Font Book,顶部显示的名称就是真实的字体家族名(比如可能是"Astro Space"带空格,或是"AstroSpace-Regular")。
  • 用命令行验证:进入assets/fonts目录,执行:
    otfinfo -f AstroSpace.ttf
    
    输出结果就是字体的正式family名称。

第二步:修正代码里的fontFamily

把你代码中fontFamily: "AstroSpace"改成刚才查到的真实名称,比如如果查到是"Astro Space",就写:

<Text style={{ fontFamily: "Astro Space" }}>测试字体效果</Text>

第三步:iOS端额外校验(可选)

如果还是没生效,手动确认Xcode里的资源嵌入情况:

  1. 打开ios目录下的Xcode项目,找到Info.plist,检查UIAppFonts数组里是否包含你的字体文件名:
    <key>UIAppFonts</key>
    <array>
        <string>AstroSpace.ttf</string> <!-- 或你重命名后的文件名 -->
    </array>
    
  2. 查看Build Phases -> Copy Bundle Resources里是否有该字体文件,没有的话手动拖拽添加。

第四步:清理缓存后重新构建

按顺序执行以下命令,确保缓存和旧构建文件完全清除:

rm -rf ios/build
npx react-native-asset
npx react-native start --reset-cache
npx react-native run-ios

这样就能正常加载AstroSpace字体了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.06 18:32:47