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

Expo Google Fonts仅在App.js生效,组件中无法使用的问题

问题原因与解决方案

你的问题出在安卓端无法对常规字重字体自动模拟加粗,而Web端会自动处理这种情况:

你在Header的Text组件里同时设置了fontFamily: "BalsamiqSans_400Regular"(400是常规字重)和fontWeight: "bold",安卓系统找不到对应粗体的字体文件,就会 fallback 到系统默认字体,导致自定义字体不生效;而Web端会自动给常规字体添加粗体效果,所以能正常显示。

解决步骤:

  1. 导入并注册粗体字体
    你已经安装了@expo-google-fonts/balsamiq-sans包,这个包包含所有字重的字体,只需在App.js中添加粗体的导入和注册:

    // App.js 中修改导入
    import { useFonts, BalsamiqSans_400Regular, BalsamiqSans_700Bold } from '@expo-google-fonts/balsamiq-sans';
    
    // 修改useFonts注册
    let [fontsLoaded] = useFonts({
      BalsamiqSans_400Regular,
      BalsamiqSans_700Bold, // 新增粗体字体
    });
    
  2. 修改Header组件的Text样式
    把Header里的Text样式换成粗体字体,同时移除fontWeight: "bold"(因为字体本身已经是粗体,无需额外设置):

    <Text style={{
      fontSize: 19,
      marginLeft: 10,
      fontFamily: "BalsamiqSans_700Bold" // 使用粗体字体
    }}>Does not work</Text>
    
  3. 额外排查操作(可选)
    如果修改后还是不生效,尝试:

    • 重启Expo Go应用和模拟器/手机
    • 清除Expo缓存:运行npx expo start -c

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 00:01:16