在动画制作过程中,将“ CAKeyframeAnimation”动画制作回动画

时间:2020-10-22 18:15:40

标签: swift core-animation cakeyframeanimation

我将动画从使用CABasicAnimation移到了CAKeyFrameAnimation,因为我需要控制keyFrames。事情是,我有一个 reset 按钮,该按钮将获取此动画并将其strokeEnd恢复为0。我需要对此进行动画处理,并且与CABasicAnimation一起使用时即可以使用 ,但是我不能使其与CAKeyFrameAnimation一起使用。

let animation = CAKeyframeAnimation(keyPath: "strokeEnd")
animation.duration = 3.0
animation.values = [0, 1/3.0, 1/3.0, 2/3.0, 2/3.0, 1]
animation.keyTimes = [0.0, 1/3.0 - 0.1, 1/3.0, 2/3.0 - 0.1, 2/3.0, 1.0 - 0.1].map({ $0 as NSNumber })
animation.timingFunctions = Array(repeating: CAMediaTimingFunction(name: CAMediaTimingFunctionName.easeOut), count: 5)
viewLayer?.add(animation, forKey: "strokeEnd")

我尝试构建一个反向CABasicAnimation,但这似乎也不起作用,因为在动画时无法获取当前的strokeEnd

0 个答案:

没有答案