0

I want to display the drawer component on hamburger menu click instead of dragging from left to right and vice versa.Here is the code

Home Screen ...

<CustomHeader title="Home" drawerOpen={() => this.props.navigation.navigate('DrawerOpen')} />

... Custom Header

  <Header style={styles.themeBGColor}>
        <Left><Icon name="ios-menu" onPress={() => this.props.drawerOpen()} /></Left>
        <Body>
           <Title>{this.props.title}</Title>
        </Body>
      <Right />
  </Header>

App.js

    const MyApp = DrawerNavigator({
  // For each screen that you can navigate to, create a new entry like this:
  Home: {
    screen: HomeScreen,
  },
  Categories: {
    screen: CategoryScreen,
  },
},
  {
    initialRouteName: 'Home',
    drawerPosition: 'left',
    contentComponent: CustomDrawerContentComponent,
    drawerOpenRoute: 'DrawerOpen',
    drawerCloseRoute: 'DrawerClose',
    drawerToggleRoute: 'DrawerToggle'
  });
code_Knight
  • 251
  • 4
  • 17

2 Answers2

0

Add this line

<Icon name="ios-menu" onPress={() => this.props.navigation.navigate('DrawerToggle');}>

and

     const MyApp = DrawerNavigator(
      {

      Home: {
        screen: HomeScreen,
        navigationOptions: ({navigation}) => ({
        drawerLockMode: 'locked-closed',
        drawerPosition: 'right',
    })
      },
      Categories: {
        screen: CategoryScreen,
      },
    },
      {
        initialRouteName: 'Home',
        contentComponent: CustomDrawerContentComponent,
        drawerOpenRoute: 'DrawerOpen',
        drawerCloseRoute: 'DrawerClose',
        drawerToggleRoute: 'DrawerToggle', 

      }); 

ref

Akash D
  • 780
  • 2
  • 11
  • 27
0

If you are using drawer navigator from react-navigation, use openDrawer function to open the navigation drawer.

onPress={() => this.props.navigation.openDrawer()}

to close the navigation drawer use

onPress={() => this.props.navigation.closeDrawer()}
akhil xavier
  • 1,847
  • 15
  • 15