AD
Size: a a a
AD
K
 CALayer {
    
    func addGradientBorder(colors: [UIColor], width: CGFloat = 1, cornerRadius: CGFloat = 30) -> CALayer {
        let gradientLayer = CAGradientLayer()
        gradientLayer.frame =  CGRect(origin: CGPoint.zero, size: self.bounds.size)
        gradientLayer.startPoint = CGPoint(x: 0.0, y: 0.0)
        gradientLayer.endPoint = CGPoint(x: 1.0,y: 1.0)
        gradientLayer.colors = colors.map({$0.cgColor})
        let shapeLayer = CAShapeLayer()
        shapeLayer.lineWidth = width
        shapeLayer.path = UIBezierPath(roundedRect: self.bounds, cornerRadius: cornerRadius).cgPath
        shapeLayer.fillColor = nil
        shapeLayer.strokeColor = UIColor.red.cgColor
        gradientLayer.mask = shapeLayer
        .addSublayer(gradientLayer)
        return gradientLayer
    }
}AD
K
AD
K
K
AD
K

AD
K
K
AD
K
AD
NK

PK
A
A