Kas*_*sra 5 animation reactjs react-native react-navigation
是否可以根据特定传递的参数启用/禁用导航过渡动画?
navigation.navigate('SomeScreen', {
data: someData,
withAnimation: true,
});
Run Code Online (Sandbox Code Playgroud)
在上面的示例中,withAnimation参数设置为true,因此我希望此处设置的动画 ( forRevealFromBottomAndroid) 处于活动状态:
<Stack.Screen
name="SomeScreen"
component={SomeScreen}
options={{
headerLeft: null,
headerShown: false,
cardStyleInterpolator:
CardStyleInterpolators.forRevealFromBottomAndroid,
}}
/>
Run Code Online (Sandbox Code Playgroud)
小智 8
是的,这是可能的。您可以通过以下方式实现:
在您的导航器中:
<Stack.Screen
name="SomeScreen"
component={SomeScreen}
options={({route: {params}}) => ({
headerLeft: null,
headerShown: false,
cardStyleInterpolator: params?.withAnimation
? CardStyleInterpolators.forHorizontalIOS
: CardStyleInterpolators.forNoAnimation,
})}
/>
Run Code Online (Sandbox Code Playgroud)
您导航的位置:
navigation.navigate('SomeScreen', {
data: someData,
withAnimation: true
});
Run Code Online (Sandbox Code Playgroud)
小智 0
是的,你可以这样做:
let animation = false;
cardStyleInterpolator: animation ? CardStyleInterpolators.forNoAnimation : CardStyleInterpolators.forHorizontalIOS
Run Code Online (Sandbox Code Playgroud)