使用react-navigation-stack 1.10.3,重置StackActions将新堆栈加载到位,而无需进行过渡。与react-navigation-stack 2.0.15相同的代码段添加了平台默认过渡,对于iOS为SlideFromRightIOS。
如何在1.10.X和2.0.X上复制以前的行为,而在重置堆栈时没有过渡?
navigation.dispatch(
StackActions.reset({
index: 0,
actions: [
NavigationActions.navigate({
routeName: user ? 'Home' : 'Landing',
}),
],
}),
);
答案 0 :(得分:3)
您可以通过在animationEnabled: false
和navigationOptions
屏幕的Home
中添加Landing
来禁用这些屏幕的动画。
Home.navigationOptions = {
animationEnabled: false
}
答案 1 :(得分:0)
反应导航V5
decrypt
否则,您可以执行此操作以避免android中的眨眼效果:
{/* Screen level */}
<NavigationContainer>
<Stack.Navigator>
<Stack.Screen
name="HomeScreen"
component={HomeScreen}
options={{
animationEnabled: false,
}}
/>
</Stack.Navigator>
</NavigationContainer>
{/* Whole navigation stack */}
<Stack.Navigator screenOptions={{ animationEnabled: false }}></Stack.Navigator>