Навигация не работает в реагировать на нативное приложение - PullRequest
0 голосов
/ 25 октября 2019

Я пытаюсь использовать заголовок в приложении. Мое приложение состоит из двух частей. внешняя часть - это навигация по стеку, в которой работает заголовок, но внутренняя часть разделена на две части с навигацией по ящикам с навигацией по вкладкам на одной странице. в этом случае я пытаюсь использовать заголовок в ящике навигации, но он не работает. также я использую избыточность на каждой странице, поэтому я немного обеспокоен тем, что это может быть и ошибкой.

корневой маршрутизатор

    export default createAppContainer(createSwitchNavigator(
      {
        Outside: StackNavigator,
        inside:DrawerNavigation
      },
      {
        initialRouteName: 'Outside',
      }
    ));

внешний заголовок работает, но я оставил его пустым

const AppNavigator = createStackNavigator({
  Landing: {
    screen: Landing,
    navigationOptions: {
      header: null,
    }
  },
  Splash: {
    screen: SplashScreen,
    navigationOptions: {
      header: null,
    }
  }
}, {
  headerMode: 'screen',
  mode: 'card',
  initialRouteName: "Splash"
});

Стек навигации внутри приложения

 Home: {
    screen: TabNavigator,
    navigationOptions: {
      // header: null,
    }
  },
  AddPhoto: {
    screen: AddPhoto,
    navigationOptions: {
      // header: null,
    }
  },
  AddVideo: {
    screen: AddVideo,
    navigationOptions: {
      // header: null,
    }
  },
}, {
  initialRouteName: 'Home',
  drawerWidth: Dimensions.get('window').width,
  contentOptions: {
    activeTintColor: "#e91e63"
  },
  headerMode: 'screen',
  contentComponent: props => <Sidebar {...props} />

Навигация по вкладкам импортируется внутри ящика в виде экрана

Profile: {
    screen: WalletInfo,
    navigationOptions: ({ navigation }) => ({
      title: `'s Profile'`,
    }),
  }
  Help: {
    screen: Help,
  }
}, {
  defaultNavigationOptions: ({ navigation }) => ({
    tabBarIcon: ({ focused, horizontal, tintColor }) => {
      const { routeName } = navigation.state;
      let IconComponent = Ionicons;
      let iconName;
      if (routeName === 'Profile') {
        iconName = `md-person`;
      } 
      else {
        iconName = `ios-help-buoy`;
      }

      // You can return any component that you like here!
      return <IconComponent name={iconName} size={25} color={tintColor} />;
    },
  }),
  tabBarOptions: {
    activeTintColor: 'black',
    inactiveTintColor: 'gray',
    showLabel: false
  },
...