美文网首页
iOS Swift设置圆角渐变色边框

iOS Swift设置圆角渐变色边框

作者: rome753 | 来源:发表于2022-03-21 17:51 被阅读0次
    截屏2022-03-21 下午5.48.28.png
    
            let myView = UIView()
            myView.bounds = CGRect(x: 0, y: 0, width: 300, height: 100)
            myView.addGradientLayerWithCorner(cornerRadius: 20, lineWidth: 10, colors: [UIColor.blue.cgColor, UIColor.green.cgColor])
    
    extension UIView {
        
        func addGradientLayerWithCorner(cornerRadius:CGFloat, lineWidth:CGFloat, colors: [CGColor]) {
            let gradientLayer = CAGradientLayer()
            gradientLayer.frame = self.bounds
            gradientLayer.colors = [UIColor.blue.cgColor,UIColor.green.cgColor]
            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)
        }
    }
    

    这么个东西,网上一搜实现的也是各种问题。只能自己封装一下。

    相关文章

      网友评论

          本文标题:iOS Swift设置圆角渐变色边框

          本文链接:https://www.haomeiwen.com/subject/lyytjrtx.html