gpt4 book ai didi

ios - 动画 CAShapeLayer 路径变化

转载 作者:搜寻专家 更新时间:2023-10-30 22:03:40 24 4
gpt4 key购买 nike

我正在尝试为 CAShapeLayerpath 属性的变化设置动画,如下所示:

animatePathChange(for: progressLayer, toPath: progressPath.cgPath)
progressLayer.path = progressPath.cgPath

这是animatePathChange函数代码:

func animatePathChange(for layer: CAShapeLayer, toPath: CGPath) {
let animation = CABasicAnimation(keyPath: "path")
animation.duration = 1.0
animation.fromValue = layer.path
animation.toValue = toPath
animation.timingFunction = CAMediaTimingFunction(name: "easeInEaseOut")
layer.add(animation, forKey: "path")
}

但最终的结果并不是我想要的。如何实现将图层的 path 从旧值更改为新值的动画?

上面的代码现在看起来是这样的:

Result

最佳答案

不要为路径设置动画。配置整个路径,然后设置 strokeEnd — 假设它是 0,这样用户什么也看不到。现在,每次您想要进行更改时,为从当前 strokeEnd 到新的 strokeEnd 的更改设置动画。路径似乎会绕着曲线进一步延伸。

enter image description here

关于ios - 动画 CAShapeLayer 路径变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42378051/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com