Layer的使用

delims 于 2019-02-18 发布

#CAGradientLayer

我们可以通过简单的代码实现投影


    shadowView.layer.shadowOpacity = 1;
    shadowView.layer.shadowOffset = CGSizeMake(0, 3); //投影的方向,该值为向下3个点
    shadowView.layer.shadowRadius = 3; //投影半径,模糊渐变的宽度
    shadowView.layer.shadowColor   = [UIColor blueColor].CGColor //投影颜色

通过上述代码实现的投影为四周投影,有时候我们可能想实现只为View的一个边添加投影,可以这样做。 通过 CAGradientLayer。CAGradientLayer可以设置多个颜色,多个颜色渐变的点,在点和点之间进行均匀的渐变。

    CAGradientLayer *gradientLayer = [CAGradientLayer layer];
    gradientLayer.colors = @[(__bridge id)[UIColor colorWithRed:value1 green:value1 blue:value1 alpha:1].CGColor,
                            (__bridge id)[UIColor colorWithRed:value2 green:value2 blue:value2 alpha:1].CGColor,
                            ];; //渐变色
    gradientLayer.startPoint = CGPointMake(1.0, 0); 
    gradientLayer.endPoint = CGPointMake(0, 0);
    gradientLayer.frame = CGRectMake(9, 0, 11,39);

通过这种方式设置后 CAGradientLayer 的颜色会进行均匀渐变