React Native - прокручиваемый swiper - PullRequest
0 голосов
/ 21 сентября 2018

Я пишу приложение для прогнозирования погоды, и мне нужен компонент, который может по-разному реагировать на горизонтальное и вертикальное пролистывание.

При горизонтальном пролистывании я хочу просмотреть карту или страницу с прогнозом для другого местоположения (приложениепозволяет задать больше местоположений).

Если я проведу пальцем по вертикали, я хочу прокрутить вниз и просмотреть дополнительную информацию о текущем местоположении.

Я попытался использовать комбинацию панорамирования и ответа прокрутки,но это позволило мне реагировать только на горизонтальное перелистывание.

Я не уверен, является ли комбинация Pan responseder и ScrollView хорошим способом решения этой проблемы ... У вас есть какие-нибудь другие идеи?

// Конструктор колоды карт

 constructor(props) {
super(props);

const position = new Animated.ValueXY();

const panResponder = PanResponder.create({
  onStartShouldSetPanResponder: () => true,
  onPanResponderMove: (event, gesture) => {
    position.setValue({ x: gesture.dx });
  },
  onPanResponderRelease: (event, gesture) => {
    if (gesture.dx > SWIPE_THRESHOLD) {
      this.forceSwipe('right');
    } else if (gesture.dx < -SWIPE_THRESHOLD) {
      this.forceSwipe('left');
    } else {
      this.resetPosition();
    }
  }
});

this.state = { panResponder, position, index: 0 };}

// Визуализация карты погоды в компоненте колоды карт

return (
        <Animated.View
          key={item.id}
          style={[this.getCardStyle(), styles.cardStyle]}
          {...this.state.panResponder.panHandlers}
        >
          <ScrollView><Text>content...<Text><ScrollView>
        </Animated.View>
      );
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...