Перекрывающийся Навигационный Ящик над панелью инструментов - PullRequest
0 голосов
/ 07 января 2019
const CustomDrawerComponent = (props)=>(
  <SafeAreaView>
    <View style={{height:150, backgroundColor:'white', alignItems:'center', justifyContent:'center'}}>
      <Image source={require('./logo.png')} style={{height:120, width:120, borderRadius:60}} />
    </View>
    <ScrollView>
      <DrawerItems {...props} />
    </ScrollView>
  </SafeAreaView> )


const customstack = createStackNavigator({
  Location : {screen : Location},
  AddVehicleOne : {screen : AddVehicleOne},
  AddVehicleTwo : {screen : AddVehicleTwo},
  BookService : {screen : BookService},
  ContactAdmin : {screen : ContactAdmin},
},{
  headerMode: 'none',
  navigationOptions:({navigation}) => ({
    header: null,
  }),

})


const orderstack = createStackNavigator({
  OrderHistory : {screen : OrderHistory},
  HistoryDetails: {screen : HistoryDetails},

},{
  headerMode: 'none',
  navigationOptions:({navigation}) => ({
    header: null,
  }),

})



const drawerNavigator = createDrawerNavigator({
  VehicleScreen: {
    screen: HomeScreen,
    navigationOptions: {drawerLabel: 'Add Vehicle',}
  },

  MOrderScreen: {
    screen: orderstack,
    navigationOptions: {drawerLabel: 'My Order',}
  },
  TOrderScreen: {
    screen: TrackOrder,
    navigationOptions: {drawerLabel: 'Track Order',}
  },
  NotificationsScreen: {
    screen: SettingsScreen,
    navigationOptions: {drawerLabel: 'Notifications',}
  },
  WorksScreen: {
    screen: SettingsScreen,
    navigationOptions: {drawerLabel: 'How It Works',}
  },
  TermsScreen: {
    screen: SettingsScreen,
    navigationOptions: {drawerLabel: 'Terms & Condition',}
  },
  LogoutScreen: {
    screen: Logout,
    navigationOptions: {drawerLabel: 'Logout',}
  },
  //CustomScreen : { screen : customstack, }
},
  {
    drawerPosition :"left",   contentComponent:CustomDrawerComponent
  });


const RootStack = createStackNavigator({
  SplashScreen: { screen: SplashScreen },
  Login: { screen: Login },
  Signup: {screen: Signup},
  Main: {screen: Main},
  Home: {screen: drawerNavigator,
     headerMode: 'none',
     navigationOptions: ({ navigation }) => ({
              headerLeft:<Icon
                  name="md-menu"
                  size={30}
                  color='#FFFFFF'
                  marginLeft= {25}
                  onPress={() => navigation.toggleDrawer()} />,
                    headerStyle: {
                       backgroundColor: '#008000'
                    }
          })
         },

}, {
  initialRouteName: 'SplashScreen'
}) 

const AppNavigator = createAppContainer(RootStack)
export default AppNavigator;

Я поместил навигатор ящика в навигатор основного стека. Но проблема в том, что в ящике навигации не скрывается заголовок навигатора панели инструментов / стека? В чем тут проблема? Я попробовал способ поместить стековый навигатор в секционный навигатор. Но я не могу сделать это здесь, так как мое приложение сначала загрузит экран-заставку, затем войдет и другой экран. Поэтому обязательно ставить стековый навигатор как root.

...