How to use react-navigation-shared-element - 5 common examples

To help you get started, we’ve selected a few react-navigation-shared-element examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github IjzerenHein / react-navigation-shared-element-rn60demo / src / App.js View on Github external
import {createAppContainer} from 'react-navigation';
import {createStackNavigator} from 'react-navigation-stack';
import {createSharedElementStackNavigator} from 'react-navigation-shared-element';
import {useScreens} from 'react-native-screens';
import {MainScreen} from './MainScreen';
import {DetailScreen} from './DetailScreen';
import {springyFadeIn} from './transitions';

useScreens();

// Instead of calling `createStackNavigator`, wrap it using `createSharedElementStackNavigator`
const StackNavigator = createSharedElementStackNavigator(
  createStackNavigator,
  {
    Main: MainScreen,
    Detail: DetailScreen,
  },
  {
    transitionConfig: () => springyFadeIn(),
  },
);

export default createAppContainer(StackNavigator);
github IjzerenHein / react-native-shared-element / Example / src / screens / ReactNavigationScreen.js View on Github external
...screens,
  },
  {
    initialRouteName: 'Modal',
    mode: 'modal',
    navigationOptions: ({navigation}) => ({
      tabBarLabel: 'Modal',
      tabBarIcon: ({tintColor}) => (
        
      ),
      tabBarVisible: isTabBarVisible(navigation),
    }),
  }
);

const fadeNavigator = createSharedElementStackNavigator(
  createStackNavigator,
  {
    Fade: MainScreen,
    ...screens,
  },
  {
    initialRouteName: 'Fade',
    navigationOptions: ({navigation}) => ({
      tabBarLabel: 'Fade',
      tabBarIcon: ({tintColor}) => (
        
      ),
      tabBarVisible: isTabBarVisible(navigation),
    }),
    transitionConfig: () => fadeIn(0, true),
  }
github IjzerenHein / react-native-shared-element / Example / src / screens / ReactNavigationScreen.js View on Github external
},
  {
    initialRouteName: 'Stack',
    //transitionConfig: () => fadeIn(5000),
    navigationOptions: ({navigation}) => ({
      tabBarLabel: 'Stack',
      tabBarIcon: ({tintColor}) => (
        
      ),
      tabBarVisible: isTabBarVisible(navigation),
    }),
    transitionConfig: Platform.OS === 'android' ? () => fromRight() : undefined,
  }
);

const modalNavigator = createSharedElementStackNavigator(
  createStackNavigator,
  {
    Modal: MainScreen,
    ...screens,
  },
  {
    initialRouteName: 'Modal',
    mode: 'modal',
    navigationOptions: ({navigation}) => ({
      tabBarLabel: 'Modal',
      tabBarIcon: ({tintColor}) => (
        
      ),
      tabBarVisible: isTabBarVisible(navigation),
    }),
  }
github expo / expo / apps / native-component-list / src / screens / SharedElementScreen.tsx View on Github external
return {
    transitionSpec,
    screenInterpolator: ({ position, scene }: any) => {
      const { index } = scene;

      const opacity = position.interpolate({
        inputRange: [index - 1, index],
        outputRange: [0, 1],
      });

      return { opacity };
    },
  };
}

const StackNavigator: any = createSharedElementStackNavigator(
  createStackNavigator,
  {
    Main: MainScreen,
    Detail: DetailScreen,
  },
  {
    transitionConfig: () => springyFadeIn(),
    defaultNavigationOptions: {
      headerTintColor: Colors.tabIconSelected,
      headerTitleStyle: {
        color: '#000',
      },
    },
  }
);
github IjzerenHein / react-native-shared-element / Example / src / screens / ReactNavigationScreen.js View on Github external
};

function isTabBarVisible(navigation: any): boolean {
  const currentRoute =
    navigation.state.routes[navigation.state.routes.length - 1];
  switch (currentRoute.routeName) {
    case 'Card':
    case 'Detail':
    case 'Pager':
      return false;
    default:
      return true;
  }
}

const stackNavigator = createSharedElementStackNavigator(
  createStackNavigator,
  {
    Stack: MainScreen,
    ...screens,
  },
  {
    initialRouteName: 'Stack',
    //transitionConfig: () => fadeIn(5000),
    navigationOptions: ({navigation}) => ({
      tabBarLabel: 'Stack',
      tabBarIcon: ({tintColor}) => (
        
      ),
      tabBarVisible: isTabBarVisible(navigation),
    }),
    transitionConfig: Platform.OS === 'android' ? () => fromRight() : undefined,

react-navigation-shared-element

react-native-shared-element bindings for React Navigation

MIT
Latest version published 3 years ago

Package Health Score

51 / 100
Full package analysis

Popular react-navigation-shared-element functions