Q: Navigation using 'react-native-navigation' I have created app using 'react-native-navigation' and first navigation working fine.
 Navigation.startSingleScreenApp({
      screen: {
          screen: 'drawer.HomeScreen',
          title: '',
          navigatorStyle: {
              navBarHidden: true
          }
      }
  });

I got issue in navigation
import { Navigation } from 'react-native-navigation';

and tried to navigate using
Navigation.push({
      component: {
          name: 'drawer.DashboardScreen'
      }
});

startMainTab.js
 const startTabs = () => {
      Promise.all([
          Icon.getImageSource("ios-share-alt", 30),
          Icon.getImageSource("ios-menu", 30)
      ]).then(sources => {
          Navigation.startTabBasedApp({
              tabs: [{
                      screen: 'drawer.AnalyticsScreen',
                      navigatorButtons: {
                          leftButtons: [{
                              icon: sources[1],
                              title: "Menu",
                              id: 'sideDrawerToggle'
                          }]
                      }
                  },
                  {
                      screen: 'drawer.DashboardScreen',
                      navigatorButtons: {
                          leftButtons: [{
                              icon: sources[1],
                              title: "Menu",
                              id: 'sideDrawerToggle'
                          }]
                      }
                  }
              ],
              drawer: {
                  left: {
                      screen: 'drawer.SideDrawer'
                  }
              }
          });
      });
  }

SideDrawer.js
  export default startTabs;

      export default class SideDrawer extends Component {

      constructor(props) {
          super(props);
          this.props.navigator.setOnNavigatorEvent(this.onNavigatorEvent);
      }

      componentWillMount() {
          this.props.navigator.setOnNavigatorEvent(this.onNavigationEvent)
      }

  onNavigationEvent = (event) => {
          // handle a deep link
          if (event.type == 'DeepLink') {
              const parts = event.link;
              alert("Scree: " + parts)
              //this.navigateToAbout()                  

              this.props.navigator.push({
                  screen: "drawer.HomeScreen"
              })
              if (parts == 'drawer.DashboardScreen') {
                  //this.onPressScreen1();
              }
          }
      }

      navigateToAbout = () => {
          this.props.navigator.push({
              screen: 'drawer.DashboardScreen'
          })

      }
      render() {
          return ( <
              View style = {
                  styles.container
              } >
              <
              Text > SideDrawer < /Text> <
              TouchableHighlight onPress = {
                  this.navigateToAbout.bind(this)
              } >
              <
              Text > Click Me < /Text> <
              /TouchableHighlight> <
              /View>
          )
      }
  }


A: Since pushing a screen is an action you perform on an existing navigation stack, you need to call it on your current component navigator object which you'll automagically get as a prop: 
this.props.navigator.push({screen: 'drawer.DashboardScreen'})
I strongly suggest you migrate to react-native-navigation v2 as v1 has limited functionality and is no longer maintained.

A: Download source code from here(React Native Navigation)
App.js:
import React, {Component} from 'react';
import {createStackNavigator,createAppContainer} from 'react-navigation'
import HomeScreen from './Screens/HomeScreen';
import ProfileScreen from './Screens/ProfileScreen';
import ContactScreen from './Screens/ContactScreen';
import MainScreen from './Screens/MainScreen'


export default class App extends Component {
render() {

return <AppNavigationContainer/>

}

}
const AppNavigator = createStackNavigator({

Main:MainScreen,

Home: HomeScreen,

Profile: ProfileScreen,

Contact:ContactScreen

}, {

initialRouteName: 'Main',

navigationOptions: {

headerTitleStyle: {

fontWeight: "bold",

color: "red",

},

headerTintColor: "red"

}

})

const AppNavigationContainer = createAppContainer(AppNavigator);

MOVE FROM ONE SCREEN TO ANOTHER:
this.props.navigation.navigate('Profile')

Thanks!
