以下代码是从另一个SO答案中提取的,但是否有可能像UIView的CAKeyframeAnimation提供animateWithDuration属性的方式一样延迟此delay动画的开始?

根据类文档,CAKeyframeAnimation类似乎不包含delay属性。

    let animation = CAKeyframeAnimation(keyPath: "transform.translation.x")
    animation.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionLinear)
    animation.duration = 1.0
    animation.repeatCount = 2
    animation.values = [-10, 10, -10, 10, -5, 5, -2, 2, 0]
    view.layer.addAnimation(animation, forKey: "shake")

最佳答案

你可以试试这个东西。试图延迟动画的开始时间。

animation.beginTime = CACurrentMediaTime() + 5.0   // change to your custom delay.

关于ios - 使用CAKeyframeAnimation延迟UIView动画的启动?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38783373/

10-13 07:58