Я пытаюсь заставить работать следующее. Есть 3 экрана:
- Экран А
- Экран B
- Экран C
Мне нужна другая анимация, когда A переходит в C, а не когда B переходит в C. Кто-нибудь знает, как это сделать?
Я пытаюсь заставить работать следующее. Есть 3 экрана:
Мне нужна другая анимация, когда A переходит в C, а не когда B переходит в C. Кто-нибудь знает, как это сделать?
Вы можете использовать эту библиотеку: rn-transitions. Итак, в соответствии с документами вы можете добавлять определенные переходы на определенные страницы, например:
import { fromLeft, zoomIn, zoomOut } from 'react-navigation-transitions'
const handleCustomTransition = ({ scenes }) => {
const prevScene = scenes[scenes.length - 2];
const nextScene = scenes[scenes.length - 1];
// Custom transitions go there
if (prevScene
&& prevScene.route.routeName === 'ScreenA'
&& nextScene.route.routeName === 'ScreenB') {
return zoomIn();
} else if (prevScene
&& prevScene.route.routeName === 'ScreenB'
&& nextScene.route.routeName === 'ScreenC') {
return zoomOut();
}
return fromLeft();
}
const PrimaryNav = createStackNavigator({
ScreenA: { screen: ScreenA },
ScreenB: { screen: ScreenB },
ScreenC: { screen: ScreenC },
}, {
transitionConfig: (nav) => handleCustomTransition(nav)
})
надеюсь это поможет. не стесняйтесь сомневаться