self.isAnimation = true
let rotationAnimation = CABasicAnimation.init(keyPath: "transform.rotation.z")
rotationAnimation.toValue = NSNumber(value: M_PI * 2.0)
rotationAnimation.isRemovedOnCompletion = false //后台不停止
rotationAnimation.duration = 2 //时长
rotationAnimation.isCumulative = true
rotationAnimation.repeatCount = MAXFLOAT;
self.playPicImg.layer.add(rotationAnimation, forKey: "rotationAnimation")
func isStartAnimation(){
if self.isAnimation {
return
}
self.isAnimation = true
let pausedTime = self.playPicImg.layer.timeOffset
self.playPicImg.layer.speed = 1.0;
self.playPicImg.layer.timeOffset = 0.0;
self.playPicImg.layer.beginTime = 0.0;
let timeSincePause = self.playPicImg.layer.convertTime(CACurrentMediaTime(), from: nil) - pausedTime
self.playPicImg.layer.beginTime = timeSincePause
}
func isStopAnimation(){
if !self.isAnimation {
return
}
self.isAnimation = false
// self.playPicImg.layer.removeAllAnimations()
let pausedTime = self.playPicImg.layer.convertTime(CACurrentMediaTime(), from: nil)
self.playPicImg.layer.speed = 0.0
self.playPicImg.layer.timeOffset = pausedTime
}