反应本机并发动画互相阻止-android

时间:2018-08-13 11:14:30

标签: javascript reactjs react-native expo

“博览会”:“ ^ 29.0.0”

“本机”:“ https://github.com/expo/react-native/archive/sdk-29.0.0.tar.gz


我有一个带有 SVG圆圈元素的父级组件,该组件不断减小直至完全消失。减少的过程是通过:

for ip in $(cat $filename)
do
  servername=$(dig $nameserver -x $ip +short | sed 's/\.$//')
  echo "set address $servername ip-netmask $ip"
done

..和 setNativeProps

Animated.timing(
  this.countdownCircleAnim.r, 
  {
    useNativeDriver: true, 
    toValue: 0
    delay: 0, 
    duration: 10000,
    easing: Easing.linear
  }
).start()

但这似乎会干扰 onPress 操作。每当触摸 onPress 时, onPress 内部的代码就会花费很长时间。

this.countdownCircleAnim.r.addListener((radius) => {
      // update circle size
      this.circle.setNativeProps({ r: val.toString()})
})

但是,一旦禁用SVG圆动画,该代码就会立即运行。最佳的最佳方法是什么?我试图将代码包装在 requestAnimationFrame onPress 中,但无济于事。

当代码在装有 Android Oreo 的设备上运行时,SVG动画和 onPress 都很流畅,但是当代码在< strong> Android Nougat ,上面描述的所有阻止问题都存在:-(

0 个答案:

没有答案