iOS 添加渐变色

2019-08-07  本文已影响0人  NapoleonY

代码

enum GradientColorPoint {
    case leftTop
    case leftBottom
    case rightTop
    case rightBottom
}

private func gradientColor(colors:[CGColor], startPoint: GradientColorPoint, endPoint: GradientColorPoint, in view: UIView) {
    let gradientLayer = CAGradientLayer()
    gradientLayer.frame = view.bounds
    gradientLayer.colors = colors
    switch startPoint {
    case .leftTop:
        gradientLayer.startPoint = CGPoint(x: 0, y: 0)
    case .leftBottom:
        gradientLayer.startPoint = CGPoint(x: 0, y: 1)
    case .rightTop:
        gradientLayer.startPoint = CGPoint(x: 1, y: 0)
    case .rightBottom:
        gradientLayer.startPoint = CGPoint(x: 1, y: 1)
    }
    
    switch endPoint {
    case .leftTop:
        gradientLayer.endPoint = CGPoint(x: 0, y: 0)
    case .leftBottom:
        gradientLayer.endPoint = CGPoint(x: 0, y: 1)
    case .rightTop:
        gradientLayer.endPoint = CGPoint(x: 1, y: 0)
    case .rightBottom:
        gradientLayer.endPoint = CGPoint(x: 1, y: 1)
    }
    view.layer.insertSublayer(gradientLayer, at: 0)
}
上一篇 下一篇

猜你喜欢

热点阅读