ios - 如何制作UIView的渐变边框?

标签 ios border gradient

我想做一个像下图这样的渐变边框:

Image

但我不知 Prop 体怎么做,即我应该使用什么渐变颜色来做到这一点?如何设置我的 View 以显示像图像一样的边框?

我正在使用以下代码来获取边框:

 self.view.layer.borderColor = [UIColor orangeColor].CGColor;
 self.view.layer.borderWidth = 2.0f;

最佳答案

这就是我所做的并且效果很好

   extension CALayer {
    func addGradienBorder(colors:[UIColor],width:CGFloat = 1) {
        let gradientLayer = CAGradientLayer()
        gradientLayer.frame =  CGRect(origin: CGPointZero, size: self.bounds.size)
        gradientLayer.startPoint = CGPointMake(0.0, 0.5)
        gradientLayer.endPoint = CGPointMake(1.0, 0.5)
        gradientLayer.colors = colors.map({$0.CGColor})

        let shapeLayer = CAShapeLayer()
        shapeLayer.lineWidth = width
        shapeLayer.path = UIBezierPath(rect: self.bounds).CGPath
        shapeLayer.fillColor = nil
        shapeLayer.strokeColor = UIColor.blackColor().CGColor
        gradientLayer.mask = shapeLayer

        self.addSublayer(gradientLayer)
    }

}

关于ios - 如何制作UIView的渐变边框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15193993/

相关文章:

html - css分隔线问题

body 上设置的 CSS3 渐变背景不会拉伸(stretch)而是重复?

html - Css/Html 删除左侧边框和我的无序列表之间的空格

具有 rgb/rgba 和回退的 CSS3 跨浏览器渐变背景

python - 在pytorch中,当张量中的一个元素用于计算张量中的另一个元素时,如何计算梯度?

ios - 如何从同一个 Storyboard访问 Objective-C 和 Swift 类?

ios - URLSession 产生 '()' ,而不是预期的上下文结果类型

ios - 为新提醒获取新日历时出错

ios - 使用 UIView 作为 subview 进行水平分页的 UIScrollView

c# - 生成带有白色边框的缩略图