【问题标题】:react native gesture touch point capture issue反应本机手势触摸点捕获问题
【发布时间】:2020-10-22 06:06:50
【问题描述】:

我想获得手势的接触点。当我在同一页面上执行此操作时(在某个位置触摸屏幕并将手指移动到另一个位置),以下功能可以完美运行。 (我可以得到开始接触点和结束接触点)

  panResponder = PanResponder.create({
    onStartShouldSetResponder: () => true,
    onMoveShouldSetPanResponder: () => true,
    onPanResponderGrant: (evt, gestureState) => {
      console.log(evt.nativeEvent, '........', gestureState);
    },
    onPanResponderRelease: (evt, gestureState) => {
      console.log(evt.nativeEvent, '........................', gestureState);
    },
  });

render() {
    return (
      <View style={{flex: 1, alignItems: 'center', justifyContent: 'center'}}>
        <Swiper loop={false} showsPagination={false} index={1}>
          <View style={styles.textInput}>
            <Button
              title="Type"
              onPress={() => this.props.navigation.navigate('Keystroke')}
            />
          </View>
          <Swiper
            {...this.panResponder.panHandlers}
            horizontal={false}
            loop={false}
            showsPagination={false}
            index={1}>
            <View style={styles.textInput}>
              <Text>Swipe left to select typing</Text>
              <Text>Swipe right to select gestures</Text>
            </View>
          </Swiper>

        </Swiper>
      </View>
    );
  }

但是,我需要在滑动屏幕时获取起始(onPanResponderGrant)和结束(onPanResponderRelease)坐标。

我正在使用

Import Swiper from 'react-native-swiper';

在这里,起始接触点捕获。但是结束的接触点并没有捕捉到。

有人可以帮我解决这个问题吗? 谢谢

【问题讨论】:

标签: react-native mobile gesture


【解决方案1】:

我通过使用 onPanResponderEnd 而不是 onPanResponderRelease 让它正常工作。

onPanResponderEnd: (evt, gestureState) => {}

【讨论】:

    【解决方案2】:

    使用 onPanResponderEnd 代替 onPanResponderRelease

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-01-27
      • 1970-01-01
      • 1970-01-01
      • 2016-09-13
      • 2021-11-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多