CAGradientLayer是CALayer的一个特殊子类。
CAGradientLayer实现渐变标间简单直观,但存在一定的局限性,比如无法自定义整个渐变区域的形状,如环形、曲线形的渐变。
colors 渐变的颜色
locations 渐变颜色的分割点
IMG_0334.jpgstartPoint&endPoint 颜色渐变的方向,范围在(0,0)与(1.0,1.0)之间,如(0,0)(1.0,0)代表水平方向渐变,(0,0)(0,1.0)代表竖直方向渐变
// 设置颜色渐变 下黑上白 透明度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];
}
网友评论