错误:初始化程序只能在类型中声明

Sah*_*oor 14 ios swift

这是我的代码

extension UIImage {
    convenience init(color: UIColor, size: CGSize = CGSizeMake(1, 1)) {
        let rect = CGRectMake(0, 0, size.width, size.height)
        UIGraphicsBeginImageContext(rect.size)

        let context = UIGraphicsGetCurrentContext()
        CGContextSetFillColorWithColor(context, color.CGColor)
        CGContextFillRect(context, rect)

        let image = UIGraphicsGetImageFromCurrentImageContext()
        UIGraphicsEndImageContext()

        init(CGImage: image.CGImage!)
    }
}
Run Code Online (Sandbox Code Playgroud)

init(CGImage: image.CGImage!),我得到错误

初始化程序只能在类型中声明

Mar*_*n R 18

从便捷初始化程序调用专用初始化程序self.init(...):

self.init(CGImage: image.CGImage!)
Run Code Online (Sandbox Code Playgroud)

如果没有self.(或者super.,如果你调用父类的初始化)编译器错误init(...)声明的init方法的.