iOS 음악 재생 기 그림 회전 실현

본 논문 의 사례 는 iOS 가 음악 재생 기 이미지 회전 을 실현 하 는 구체 적 인 코드 를 공유 하여 여러분 께 참고 하 시기 바 랍 니 다.구체 적 인 내용 은 다음 과 같 습 니 다.
계승 및 UIImageView 의 클래스 CXGImageView 에 CABasic Animation 회전 애니메이션 을 추가 하여 플레이어 그림 회전 효 과 를 실현 합 니 다.
주로 세 가지 방법 을 제공 합 니 다:startRotating,stopRotating,resume Rotate
startRotating

///     
func startRotating() {
 let rotateAnimation = CABasicAnimation(keyPath: "transform.rotation")
 rotateAnimation.isRemovedOnCompletion = false //      Home    ,    
 rotateAnimation.fromValue = 0.0
 rotateAnimation.toValue = Double.pi * 2
 rotateAnimation.duration = 20
 rotateAnimation.repeatCount = MAXFLOAT
 self.layer.add(rotateAnimation, forKey: nil)
 isRotating = true
}
stopRotating

///     
func stopRotating() {
 if !isRotating {
 return
 }
 let pausedTime = self.layer.convertTime(CACurrentMediaTime(), from: nil)
 //  CALayer       
 self.layer.speed = 0
 //  CALayer      pausedTime    
 self.layer.timeOffset = pausedTime
 isRotating = false
}
resumeRotate

///     
func resumeRotate() {

 if isRotating {
 return
 }

 if self.layer.timeOffset == 0 {
 startRotating()
 return
 }

 let pausedTime = self.layer.timeOffset
 // 1.  CALayer       
 self.layer.speed = 1.0
 // 2.            
 self.layer.timeOffset = 0.01
 // 3.          
 self.layer.beginTime = 0.0
 // 4.        (      CACurrentMediaTime()-pausedTime)
 let timeWhenpause = self.layer.convertTime(CACurrentMediaTime(), from: nil) - pausedTime
 // 5.               (   timeSincePause)
 self.layer.beginTime = timeWhenpause
 isRotating = true

}
메모:홈 키 를 누 르 고 다시 응용 프로그램 으로 돌아 갈 때 그림 이 돌아 가지 않 습 니 다.애니메이션 isRemovedOnComplete 를 false 로 설정 해 야 합 니 다.
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기