当前位置:网站首页>Cabasicanimation pause \ enterprise action

Cabasicanimation pause \ enterprise action

2022-07-19 04:20:00 Bo Bobo

        self.isAnimation = true
        let rotationAnimation = CABasicAnimation.init(keyPath: "transform.rotation.z")
        rotationAnimation.toValue = NSNumber(value: M_PI * 2.0)
        rotationAnimation.isRemovedOnCompletion = false  // Background does not stop 
        rotationAnimation.duration = 2   // Duration 
        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
    }

 

原网站

版权声明
本文为[Bo Bobo]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/200/202207170005272426.html