iOS 暂停和恢复CoreAnimation层动画
2015-09-04 本文已影响299人
ldjhust
暂停动画:
func pauseAnimation(layer: CALayer) {
let timePause = layer.convertTime(CACurrentMediaTime(), nil)
layer.speed = 0.0
layer.timeOffset = timePause
}
恢复动画:
func resumeAnimation(layer: CALayer) {
let timePause = layer.timeOffset
layer.speed = 1.0
layer.timeOffset = 0.0
layer.beginTime = 0.0
let passTimeSincePause = layer.convertTime(CACurrentMediaTime(), nil) - timePause
layer.beginTime = passTimeSincePause
}