iOS 給View添加一個漸變色邊框

主要思路

添加一個CAGradientLayer,這個CAGradientLayer的遮罩層是一個填充透明的CAShapeLayer,漸變色的顏色、方向由CAGradientLayercolorsstartPointendPoint來決定,邊框的寬度由CAShapeLayerlineWidth決定,另外邊框的圓角也是可以配置的,這里不再贅述了,代碼如下:

        let gradientLayer = CAGradientLayer()
        gradientLayer.frame = boarderView.bounds
        gradientLayer.colors = [UIColor.blue.cgColor,UIColor.green.cgColor]
        
        let maskLayer = CAShapeLayer()
        maskLayer.lineWidth = 2.0
        maskLayer.path = UIBezierPath(rect: self.boarderView.bounds).cgPath
        maskLayer.fillColor = UIColor.clear.cgColor
        maskLayer.strokeColor = UIColor.black.cgColor
        
        gradientLayer.mask = maskLayer
        self.boarderView.layer.addSublayer(gradientLayer)

效果如下:

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容