I am using react navigation tab navigator and react native material bottom navigation and it currently swipes from screen to screen. How would I make it cross fade from one screen to another like the Material Design Guidelines suggests.
Router.js
import React from 'react';
import { TabNavigator, StackNavigator, NavigationActions } from 'react-navigation';
import { NavigationComponent } from 'react-native-material-bottom-navigation';
import Icon from 'react-native-vector-icons/MaterialIcons';
import { MAIN_COLOR, BOTTOM_BAR_COLOR, BOTTOM_BAR_ICON_COLOR } from '../config';
import { Classes, Settings, Search, SplashScreen } from '../components/screens';
import Login from '../components/screens/Login';
import Main from '../Main';
export const Tabs = TabNavigator({
Classes: {
screen: Classes,
navigationOptions: {
tabBarLabel: 'Classes',
tabBarIcon: () => <Icon size={24} name="list" color={BOTTOM_BAR_ICON_COLOR} />,
},
},
Search: {
screen: Search,
navigationOptions: {
tabBarLabel: 'Search',
tabBarIcon: () => <Icon size={24} name="search" color={BOTTOM_BAR_ICON_COLOR} />,
},
},
Settings: {
screen: Settings,
navigationOptions: {
tabBarLabel: 'Settings',
tabBarIcon: () => <Icon size={24} name="settings" color={BOTTOM_BAR_ICON_COLOR} />,
},
},
}, {
tabBarComponent: NavigationComponent,
tabBarPosition: 'bottom',
swipeEnabled: false,
tabBarOptions: {
bottomNavigationOptions: {
labelColor: BOTTOM_BAR_ICON_COLOR,
rippleColor: MAIN_COLOR,
shifting: false,
tabs: {
Search: {
barBackgroundColor: BOTTOM_BAR_COLOR,
activeIcon: <Icon size={24} name="search" color={MAIN_COLOR} />,
activeLabelColor: MAIN_COLOR,
},
Classes: {
barBackgroundColor: BOTTOM_BAR_COLOR,
activeIcon: <Icon size={24} name="list" color={MAIN_COLOR} />,
activeLabelColor: MAIN_COLOR,
},
Settings: {
barBackgroundColor: BOTTOM_BAR_COLOR,
activeIcon: <Icon size={24} name="settings" color={MAIN_COLOR} />,
activeLabelColor: MAIN_COLOR,
},
},
},
},
});
This is the effect I want
https://storage.googleapis.com/material-design/publish/material_v_11/assets/0B3321sZLoP_HTTA0QUM4MWxKSTg/components_bottomnavigation_behavior_crossfade.webm
This is what I have
https://storage.googleapis.com/material-design/publish/material_v_11/assets/0B3321sZLoP_HQWYxQWE5LUg2WDQ/components_bottomnavigation_behavior_sibling.webm
I finally fixed the error by disabling animation in the tab navigator.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With