iOS 播放GIF

iOS默认是不支持播放GIF图片的,但是系统也没有禁止播放它,该有的API还是有的,下面就 来一发吧!

一定要导入ImageIO 这个 库

//首先你得有个imageview吧~~~~~
 @IBOutlet weak var imageView: UIImageView!
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
        // 1️⃣.在本地加载Gif图片(不要放在imageassert中,其实也放不进去~~`), 并且转成Data类型(这里不再写swift语法,guard 做一下校验...)
        guard let path = Bundle.main.path(forResource: "demo.gif", ofType: nil) else { return }
        guard let data = NSData(contentsOfFile: path) else { return }
        
        // 2️⃣. 将data转成CGImageSource对象,返回CGImageSource
        guard let imageSource = CGImageSourceCreateWithData(data, nil) else { return }
        //3️⃣通过CGImageSource可以拿到分解了多少张图片(看成是一帧一帧的)
        let imageCount = CGImageSourceGetCount(imageSource)
        
        // 4️⃣遍历所有的图片
        var images = [UIImage]()
        var totalDuration : TimeInterval = 0
        for i in 0..
完美!

你可能感兴趣的:(iOS 播放GIF)