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

React Native项目中Material Community Icons在Expo环境下无法加载

Material Community Icons在Expo启动的iOS端显示问号的解决方法

你遇到的问题核心是:纯原生编译启动(npm run ios)时图标正常,但用Expo启动(npx expo start)时图标变成问号。这是因为Expo环境的图标加载逻辑和纯React Native原生项目不一样,你之前参考的原生iOS配置步骤只适用于原生编译场景。

下面是适配Expo环境的解决步骤:

  • 替换图标包:卸载原来的react-native-vector-icons,安装Expo官方兼容的图标包

    npm uninstall react-native-vector-icons
    npm install @expo/vector-icons
    
  • 正确引入并使用图标
    在需要用图标的组件里,这样导入:

    import MaterialCommunityIcons from '@expo/vector-icons/MaterialCommunityIcons';
    

    使用示例:

    <MaterialCommunityIcons name="account-circle" size={32} color="#666" />
    
  • 清理Expo缓存重启
    如果替换后还是显示问号,清空Expo缓存再启动:

    npx expo start --clear
    
  • 检查项目配置文件
    打开app.json或app.config.js,确保expo.ios部分没有和字体加载冲突的配置,@expo/vector-icons会自动处理字体的嵌入和加载,不需要手动在Info.plist里添加字体声明。

补充说明你之前参考的原生配置内容(已翻译为中文):

你之前看的教程是针对纯React Native原生项目的iOS配置,步骤大概是:

  1. 将react-native-vector-icons包内的字体文件手动添加到Xcode项目中
  2. 在项目的Info.plist文件里添加要加载的字体文件名列表
  3. 执行pod install并通过Xcode编译启动项目
    但这些操作只对原生编译流程有效,Expo启动时不会读取Xcode的原生配置,所以图标无法正常加载。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.03 08:35:04