Попробуйте использовать TouchableOpacity для кнопок вкладок и используйте пакет
react-navigation
для навигации и попробуйте настроить навигационную анимацию, используя параметр transitionConfig
var transitionConfig = () => ({
transitionSpec: {
duration: 300,
easing: Easing.out(Easing.poly(4)),
timing: Animated.timing,
},
screenInterpolator: sceneProps => {
const { layout, position, scene } = sceneProps;
const { index } = scene;
const height = layout.initHeight;
const width = layout.initWidth;
const translateX = position.interpolate({
inputRange: [index - 1, index, index + 1],
outputRange: [height, 0, 0],
});
const opacity = position.interpolate({
inputRange: [index - 1, index - 0.99, index],
outputRange: [0, 1, 1],
});
return { opacity, transform: [{translateX} ] };
},
});
Здесь анимация представляет собой горизонтальный слайд, вы можетеизмените преобразование на требуемую анимацию и, изменив объект преобразования, оно вернется и перейдет на нужный экран при нажатии на вкладку