import UIKit
import ImageIO
class ViewController: UIViewController {
@IBOutlet weak var imageView: UIImageView!
override func viewDidLoad() {
super.viewDidLoad()
guard let path = Bundle.main.path(forResource: "demo.gif", ofType: nil),
let data = NSData(contentsOfFile: path),
let imageSource = CGImageSourceCreateWithData(data, nil) else { return }
var images = [UIImage]()
var totalDuration : TimeInterval = 0
for i in 0..<CGImageSourceGetCount(imageSource) {
guard let cgImage = CGImageSourceCreateImageAtIndex(imageSource, i, nil) else { continue }
let image = UIImage(cgImage: cgImage)
i == 0 ? imageView.image = image : ()
images.append(image)
guard let properties = CGImageSourceCopyPropertiesAtIndex(imageSource, i, nil) as? NSDictionary,
let gifDict =
swift3播放本地GIF图
最新推荐文章于 2024-08-24 08:02:03 发布
这篇博客介绍如何在Swift3中加载并播放本地GIF图像。通过使用`ImageIO`库,从Bundle获取GIF文件路径,读取数据并创建`CGImageSource`,然后遍历每一帧,提取图片并计算总帧间隔时间来设置动画效果。
摘要由CSDN通过智能技术生成