如何在 react-native-navigation 底部标签栏中设置图标大小

How to set Icon size in react-native-navigation bottom tab bar

我刚开始学习RN,但https://reactnavigation.org/docs/tab-based-navigation/中的文档没有显示如何设置tabBarIcon的大小,我尝试在中添加一个属性,如图所示。如果我手动设置 size={38},它会起作用。但是,如果有更好的方法来设置全局大小,这意味着我只需要更改一个变量来设置整个图标大小

 <Tab.Navigator
  initialRouteName="Home"
  activeColor="#ff0071"
  inactiveColor="#000"
  barStyle={{backgroundColor: '#fff'}}
  screenOptions={({route, navigation}) => ({
    tabBarLabel: navigation.isFocused() ? route.name : '',
    tabBarIcon: ({focused, color, size}) => {
      let iconName;
      if (route.name === 'Home') {
        iconName = focused ? 'home' : 'home';
      } else if (route.name === 'Favorite') {
        iconName = focused ? 'heart' : 'heart-o';
      } else if (route.name === 'Medium') {
        iconName = focused ? 'heart' : 'heart-o';
      } else if (route.name === 'Hard') {
        iconName = focused ? 'cog' : 'cog';
      }
      return <Icon name={iconName} size={23} color={color} />;
    },
  })}>

解决方案基于React Navigation 5。在screenOptions中可以指定tabBarIcon中图标的大小属性。请参考上面的代码。