【问题标题】:PanResponder & Animated Problem in React NativeReact Native 中的 PanResponder 和动画问题
【发布时间】:2020-08-05 14:06:24
【问题描述】:

我在 React Native 中使用 PanResponder,但我有一个简单的问题我无法解决!!!

这是我的代码

class test extends React.Component {
    constructor(props) {
        super(props);
        const position = new Animated.ValueXY();
        const panResponder = PanResponder.create({
           onStartShouldSetPanResponder: () => true,
           onPanResponderMove: (evt, gs) => {
               console.log(gs.dx);
               position.setValue({ x: gs.dx , y: gs.dy })
           },
           onPanResponderRelease: (evt, gs) => {
              
               
           }, 

        });

        this.state = { panResponder, position }
    }
    getCardStyle() {
        const { position } = this.state;
        return {
            ...position.getLayout(),
        };
    }

    render() {
        return (
              <View>
                 {
                     this.props.cart.map((item, index) => {
                          return (
                         <Animated.View style={[this.getCardStyle() ,styles.CardContainer]} key={item.id}
                               {...this.state.panResponder.panHandlers}
                             >
                            <View><Image style={styles.image} source={{ uri: item.src}} /></View>
                            <Text style={styles.title}>{item.location}</Text>
                         </Animated.View>
                     )
                     })
                 }
              </View>
        );
    }
}

我想移动每个项目的手指 分开,但是当我触摸列表中的每个项目时,整个项目开始移动。

谁能帮帮我??

【问题讨论】:

    标签: react-native react-animated panresponder


    【解决方案1】:

    解决它

    我制作了另一个名为 ListItem 的组件,并在该组件中渲染了 FlatList 项目,它工作了!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-18
      • 1970-01-01
      • 2019-08-14
      • 1970-01-01
      相关资源
      最近更新 更多