2017-10-08 31 views
0

我怎样才能使一个UIView梯度的边框颜色?制作的UIView渐变的边框颜色

我宣布从我的故事板一个UIView,我知道如何使边框颜色固体。但我无法找到如何制作边框渐变。

@IBOutlet weak var view: UIView! 

override func awakeFromNib() { 
     super.awakeFromNib() 

    let gradient = CAGradientLayer() 

    gradient.colors = [UIColor.white.cgColor, UIColor.black.cgColor] 

     view.backgroundColor = nil 
     view.layer.cornerRadius = view.bounds.width/2 
     view.layer.borderWidth = 3 
     view.layer.borderColor = colorOutline.cgColor 


     nah.textColor = colorCircleBlue 


    } 
+0

更多钞票重复。看看这个答案https://stackoverflow.com/a/36836787/2000162 – TomCobo

+0

@TomCobo答案是罚款。你知道我怎样才能使框架循环? – ILoveToCode22

+0

view.layer.masksToBounds = true; view.layer.cornerRadius = view.bounds.width/2 – TomCobo

回答

0

你好的WhatsUp

下面我把一个例子,你完成你的任务。

我把我的代码中的didSet,但你可以把里面也didLoad如果你想。

我也不知道是谁这样做,我搜索我发现这个答案。

@gvuksic explain how create a border gradient on UIView us here

 let gradient = CAGradientLayer() 
     gradient.frame = CGRect(origin: CGPoint.zero, size: self.view.frame.size) 
     gradient.colors = [UIColor.blue.cgColor, UIColor.green.cgColor] 

     let shape = CAShapeLayer() 
     shape.lineWidth = 2 
     shape.path = UIBezierPath(rect: self.view.bounds).cgPath 
     shape.strokeColor = UIColor.black.cgColor 
     shape.fillColor = UIColor.clear.cgColor 
     gradient.mask = shape 

     self.view.layer.addSublayer(gradient) 
+0

这是完美的。但是,你知道我可以如何制作gradient.frame循环吗? – ILoveToCode22

+0

尝试使用这个项目的开源代码:https://github.com/tonsser/Cirque,如果你想自定义,你可以。 –