iOS Make user defined attributes apply the CGColor datatype


Example

By default, Interface Builder doesn't accept the CGColor datatype, so to allow adding a CGColor using user defined attributes in interface builder; one may want to use an extension like this:

Swift Extension :

extension CALayer {
    func borderUIColor() -> UIColor? {
        return borderColor != nil ? UIColor(CGColor: borderColor!) : nil
    }
    
    func setBorderUIColor(color: UIColor) {
        borderColor = color.CGColor
    }
}

The new user defined attribute (borderUIColor) will be recognized and applied without problems.

enter image description here