我的代码遇到了问题。我似乎无法创建CGImageSource
/ CGImageSourceRef
,但是我看到的每个repo都使用这种完全相同的方法。我已经测试过,看看数据对象是否包含gif
。所以我已将此错误隔离到CGImageSourceCreateWithData
函数,我不知道如何修复它。任何帮助将不胜感激。
这是错误:
警告:无法加载任何Objective-C类信息。这将显着降低可用类型信息的质量。
它一直没有使用此功能失败:
var imgSource = CGImageSourceCreateWithData(data, nil)
这是我保持失败的简单代码:
import UIKit
import ImageIO
import MobileCoreServices
import AVFoundation
class LCGIFImage: UIImage {
//MARK: Initializers
convenience override init?(contentsOfFile path: String) {
let data = NSData(contentsOfURL: NSURL(string: path)!)
self.init(data: data!)
}
convenience override init?(data: NSData) {
self.init(data: data, scale: 1.0)
}
override init?(data: NSData, scale: CGFloat) {
var imgSource = CGImageSourceCreateWithData(data, nil)
super.init(data: data, scale: scale)
}
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
}
required convenience init(imageLiteral name: String) {
fatalError("init(imageLiteral:) has not been implemented")
}
}
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
let path = NSBundle.mainBundle().URLForResource("1", withExtension: "gif")?.absoluteString as String!
let test = LCGIFImage(contentsOfFile: path)
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
答案 0 :(得分:1)