我正在使用Swift和Core Animation實現一個簡單的活動指示器。核心動畫循環由兩個動畫組成。當我直接將它們添加到圖層時,它們完美地工作。當我將它們添加爲CAAnimationGroup時,根本沒有任何事情發生。我完全被這種行爲所困惑,並且我已經檢查了關於CAAnimationGroup的所有stackoverflow的問題,網絡上的所有教程以及多次閱讀官方文檔。我無法弄清楚發生了什麼事。請幫忙。CAGroupAnimation不顯示動畫。當單獨添加動畫時,動畫工作正常
動畫:
let anim1 = CABasicAnimation(keyPath: "strokeEnd")
anim1.fromValue = 0
anim1.toValue = 1.0
anim1.duration = 2.0
anim1.beginTime = CACurrentMediaTime()
let anim2 = CABasicAnimation(keyPath:"strokeStart")
anim2.fromValue = 0
anim2.toValue = 1.0
anim2.duration = 2.0
anim2.beginTime = CACurrentMediaTime() + 2.0
這工作完全按預期:
shapeLayer.addAnimation(anim1, forKey:nil)
shapeLayer.addAnimation(anim2, forKey:nil)
這確實毫無關係到我的層:
let group = CAAnimationGroup()
group.animations = [anim1, anim2]
group.duration = 4.0
shapeLayer.addAnimation(group, forKey: nil)
我做了一個簡短的演示片段中使用在遊樂場:https://gist.github.com/anonymous/6021295eab4e00b813ce。請親自看看並幫我解決這個問題。 (如果你不知道如何使用遊樂場爲原型的動畫:http://possiblemobile.com/2015/03/prototyping-uiview-animations-swift-playground/)
這是完美的,非常感謝!現在清楚發生了什麼事情。 – user5000952