iOS开发 关于UIView颜色渐变 (CAGradientLayer实现渐变)

CAGradientLayer是CALayer的一个特殊子类。
CAGradientLayer实现渐变标间简单直观,但存在一定的局限性,比如无法自定义整个渐变区域的形状,如环形、曲线形的渐变。

colors 渐变的颜色

locations 渐变颜色的分割点

startPoint&endPoint 颜色渐变的方向,范围在(0,0)与(1.0,1.0)之间,如(0,0)(1.0,0)代表水平方向渐变,(0,0)(0,1.0)代表竖直方向渐变

IMG_0334.jpg
// 设置颜色渐变  下黑上白  透明度75%
- (void)setColorGradient
{
    self.colorBackgroundView.frame = CGRectMake(20, 70, CGRectGetWidth(self.view.frame)-2*20, 50);
    [self.view addSubview:self.colorBackgroundView];
    
    self.colorBackgroundView.alpha = 0.75;
    
    CAGradientLayer *gradientLayer = [[CAGradientLayer alloc] init];

    gradientLayer.colors = @[(__bridge id)[UIColor whiteColor].CGColor,(__bridge id)[UIColor blackColor].CGColor];

    gradientLayer.startPoint = CGPointMake(1, 0);

    gradientLayer.endPoint = CGPointMake(1, 1);

    gradientLayer.frame = CGRectMake(0, 0, CGRectGetWidth(self.colorBackgroundView.frame), CGRectGetHeight(self.colorBackgroundView.frame));

    [self.colorBackgroundView.layer addSublayer:gradientLayer];
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容