渐变图层背景

时间:2017-06-26 10:09:43

标签: ios uiviewcontroller cagradientlayer

我正在尝试创建渐变背景。我已经按照不同教程的步骤,但无法让我的背景视图出现,我只是得到一个白色背景。 我无法理解我做错了什么或不做什么。代码如下。 非常感谢。

import UIKit

extension CAGradientLayer {

    func backgroundGradient() -> CAGradientLayer {

        self.colors = [UIColor.green,UIColor.blue]
        self.locations = [0.0, 1.0]
        self.startPoint = CGPoint(x: 0.0, y: 1.0)
        self.endPoint = CGPoint(x: 1.0, y: 1.0)

        return self
    }
}


class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
        let gradient = CAGradientLayer().backgroundGradient()

        gradient.frame = self.view.bounds
        print(gradient.frame)
        print(gradient.startPoint)
        self.view.layer.insertSublayer(gradient, at: 0)

    }
}

1 个答案:

答案 0 :(得分:1)

渐变图层采用CGColor代替UIColor。轻松修复...

在您的扩展程序中,将self.colors行更改为:

self.colors = [UIColor.green.cgColor, UIColor.blue.cgColor]