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

React Native react-navigation底部标签栏HomeScreen的tabBarIcon不显示如何解决

问题根因

你代码里HomeScreen对应的Tab.Screen组件的配置属性名写错了:React组件Props对大小写敏感,react-navigation要求的配置属性是小写开头的options,但你给HomeScreen写的是大写开头的Options,导致该标签的tabBarIcon、自定义颜色配置全部未生效,因此图标不显示,激活态也走了默认灰色样式。

解决方案

把HomeScreen对应的Tab.Screen里的Options={{改为options={{即可,修改后代码片段如下:

<Tab.Screen
  name="HomeScreen"
  component={HomeStack}
  options={{ // 仅需将首字母大写的O改为小写o即可
    tabBarIcon: ({ focused, color }) => (
      <AntDesign name="home" size={focused ? 29 : 24} color={color} />
    ),
    tabBarLabel: "Home",
    tabBarActiveTintColor: "blue",
    tabBarInactiveTintColor: "black",
  }}
/>

优化建议

所有标签的tabBarActiveTintColor、tabBarInactiveTintColor配置完全一致,可以统一提取到Tab.Navigator的screenOptions中,减少重复代码:

<Tab.Navigator
  initialRouteName="HomeScreen"
  screenOptions={{ 
    headerShown: false,
    tabBarActiveTintColor: "blue",
    tabBarInactiveTintColor: "black"
  }}
>
<!-- 后续每个Tab.Screen都不需要再重复写这两个颜色配置 -->
</Tab.Navigator>

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 00:15:03