React native 反应导航自定义屏幕转换
我正在使用带有transitionConfig的堆栈导航器。在场景插值器中,我定义了myCustomTransition(),它将应用于堆栈中的所有屏幕 是否可以将myCustomTransition()仅应用于特定屏幕,并将默认堆栈导航器转换应用于其余屏幕 这是转换配置:React native 反应导航自定义屏幕转换,react-native,react-navigation,react-navigation-stack,custom-transition,React Native,React Navigation,React Navigation Stack,Custom Transition,我正在使用带有transitionConfig的堆栈导航器。在场景插值器中,我定义了myCustomTransition(),它将应用于堆栈中的所有屏幕 是否可以将myCustomTransition()仅应用于特定屏幕,并将默认堆栈导航器转换应用于其余屏幕 这是转换配置: const transitionConfig = () => { return { transitionSpec: { duration: 500,
const transitionConfig = () => {
return {
transitionSpec: {
duration: 500,
easing: Easing.out(Easing.poly(4)),
timing: Animated.timing,
useNativeDriver: true,
},
screenInterpolator: sceneProps => {
const { scene, position, layout } = sceneProps;
const sceneIndex = scene.index;
const height = layout.initHeight;
// is it possible to have a switch statement
switch (scene.route.routeName) {
case 'searchScreen':
return myCustomTransition();
default:
return defaultTransition();
}
},
};
};
是否可以使用switch语句将myCustomTransition()仅应用于搜索屏幕
谢谢。@Vinay Sharma用这个
示例:
const AppStack = createStackNavigator(
{
headerMode: "none",
animationEnabed: true,
transitionConfig: () => ({
transitionSpec: {
easing: Easing.bezier(.88,0.83,.82,.95),
delay: 100,
duration: 250,
},
}),
}
);
创建
createStackNavigator
,它可能只包含一个屏幕…嗨,Elango,我提到过我有多个屏幕。此解决方案完全脱离上下文,因为它没有指定如何使用自定义转换。