Как начать реагировать на родной анимирование на TouchDown

1

Я использую Expo и последнюю версию React-Native, и я хочу предоставить тонкую тактильную обратную связь для компонентов, таких как View или Button.

В настоящее время я использую анимацию для запуска анимации импульсов в событии onPress(), но анимация запускается только после отпускания пальца.

Я хочу тонкое уменьшение размера, в то время как при нажатии на него появляется гладкая анимация, которая будет чувствовать себя элегантно и не раздражать меня.

Это можно сделать? Я думал, что Animation или Animatable легко поддержали бы это, но я не могу найти похожие примеры.

Теги:
react-native

1 ответ

0

Вы можете сделать свой собственный ощутимый, используя Систему Ответчика Жест

В основном вы будете использовать реквизиты onStartShouldSetResponder, onResponderGrant и onResponderRelease переданные в Animated.View.

class MyTouchable extends React.PureComponent {
  render(){
    <Animated.View
      style={{ your styles, and animation values }} 
      onStartShouldSetResponder={() => true}
      onResponderGrant={({ nativeEvent }) => {
        //run your animations here
      }}
      onResponderRelease={({ nativeEvent }) => {
        //animate back to zero, call your onPress function
        //passed via props
      }}
    />
  }
}

Ещё вопросы

Сообщество Overcoder
Наверх
Меню