Swift--使图片360° 周期旋转

UIImageView+Extension.swift
import UIKit

extension UIImageView {

    // 360度旋转图片
    func rotate360Degree() {
        let rotationAnimation = CABasicAnimation(keyPath: "transform.rotation.z") // 让其在z轴旋转
        rotationAnimation.toValue = NSNumber(double: M_PI * 2.0) // 旋转角度
        rotationAnimation.duration = 0.6 // 旋转周期
        rotationAnimation.cumulative = true // 旋转累加角度
        rotationAnimation.repeatCount = 100000 // 旋转次数
        layer.addAnimation(rotationAnimation, forKey: "rotationAnimation")
    }

    // 停止旋转
    func stopRotate() {
        layer.removeAllAnimations()
    }
}

上面的代码使用了CABasicAnimation做动画,组合了UIImageView扩展,使UIImageView中的单幅图片围绕Z轴做周期旋转。

直接把上述代码加到UIImageView扩展中,并设定旋转周期和旋转次数(可设定repeatCount为最大值使其一直旋转),然后调用即可。

原文地址:https://www.cnblogs.com/Free-Thinker/p/6375402.html