iOS-Swift设置圆角渐变色边框
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)
}
}
这么个东西,网上一搜实现的也是各种问题。只能自己封装一下。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性