thank you for your guides and your code.
I've tried to take your CrossFadeTransitioner and use that as my default transition.
import { StackRouter } from 'react-navigation';
import MainScreen from './containers/MainScreen';
import DetailScreen from './containers/DetailScreen';
export default AppRouter = StackRouter({
Main: { screen: MainScreen },
Detail: { screen: DetailScreen }
});
import AppRouter from './router';
const initialNavState = {
index: 0,
routes: [
{ key: 'main', routeName: 'Main' },
{ key: 'detail', routeName: 'Detail' },
],
};
const navReducer = (state = initialNavState, action) => {
const newState = AppRouter.getStateForAction(action, state);
return newState || state;
};
export default function createReducer() {
return combineReducers({
nav: navReducer,
main: mainScreenReducer,
});
}
import CrossFadeTrasitioner from './transitioners/CrossFadeTrasitioner';
import AppRouter from './router';
export const AppNavigator = createNavigator(AppRouter)(CrossFadeTrasitioner);
const AppWithNavigationState = connect(state => ({
nav: state.nav,
}))(({ dispatch, nav }) => (
<AppNavigator navigation={addNavigationHelpers({ dispatch, state: nav })} />
));
export default AppWithNavigationState;
export class MainScreen extends Component {
componentDidMount() {
const { navigation } = this.props;
setTimeout(() => {
navigation.navigate('Detail');
}, 5000);
}
handleItemTap = () => {
const { navigation } = this.props;
navigation.navigate('Detail');
}
render() {
return (
<View style={{flex: 1}}>
<TouchableHighlight onPress={this.handleItemTap} style={{flex: 1}}>
<View style={{flex: 1}}>
<View style={{position: 'relative', backgroundColor: 'blue', flex: 0.3}} />
<View style={{backgroundColor: 'red', flex: 0.5, width: 200, alignSelf: 'center'}}>
<Text> LIST </Text>
</View>
</View>
</TouchableHighlight>
</View>
);
}
}
Thank you in advice.