如何在Animated.Event的Animated Value中添加额外的值?

时间:2019-05-09 13:32:21

标签: javascript react-native animation

我试图将新的事件值添加到当前值中,而不是替换它们。

此代码将touchXtouchY的值替换为translationXtranslationX

    Animated.event(
      [
        {
          nativeEvent: {
            translationX: this.touchX,
            translationY: this.touchY
          }
        }
      ],
      {
        useNativeDriver: false
      }
    )(event);

我很累实现了运行此代码的目的

    this.touchX.setValue(
      Animated.add(this.touchX, new Animated.Value(translationX))
    );
    this.touchY.setValue(
      Animated.add(this.touchY, new Animated.Value(translationY))
    );

不幸的是,当尝试将touchX应用于我的动画组件Transform with key of "translateX" must be a number: {"translateX":"[object Object]0"}

时,此错误导致错误

我希望每个事件发生后touchX等于this.touchX + translationX

1 个答案:

答案 0 :(得分:0)

Animated.Add()返回动画对象,而setValue期望有一个数字。

    this.touchX.setValue(this.touchX._value + translationX);
    this.touchY.setValue(this.touchY._value + translationY);