extension UIView {
func addGradientLayerWith(cornerRadius:CGFloat, lineWidth:CGFloat, colors: [CGColor]) {
let gradientLayer = CAGradientLayer()
gradientLayer.frame = self.bounds
gradientLayer.colors = colors
gradientLayer.cornerRadius = cornerRadius
let maskLayer = CAShapeLayer()
maskLayer.lineWidth = lineWidth
maskLayer.path = UIBezierPath(roundedRect: CGRect(x: lineWidth / 2, y: lineWidth / 2, width: bounds.width - lineWidth, height: bounds.height - lineWidth), cornerRadius: cornerRadius).cgPath
maskLayer.fillColor = UIColor.clear.cgColor
maskLayer.strokeColor = UIColor.black.cgColor
gradientLayer.mask = maskLayer
self.layer.addSublayer(gradientLayer)
}
}
网友评论