UIView的背景渐变色~~~

作者: 我是七月 | 来源:发表于2017-05-26 20:09 被阅读749次

    把UIView的背景色设置为渐变色,虽然找一张渐变的背景图很方便,但是图片是要占用资源的,所以我们最好使用代码来实现效果。

    直接上代码,这是我自己写的一个分类中的加渐变色的方法

    - (void)setGradientLayer:(UIColor*)startColor endColor:(UIColor*)endColor{
        //初始化CAGradientlayer对象,使它的大小为UIView的大小
        CAGradientLayer *gradientLayer = [CAGradientLayer layer];
        gradientLayer.frame = self.bounds;
        
        //将CAGradientlayer对象添加在我们要设置背景色的视图的layer层
        [self.layer addSublayer:gradientLayer];
        
        //设置渐变区域的起始和终止位置(范围为0-1)
        gradientLayer.startPoint = CGPointMake(0, 0);
        gradientLayer.endPoint = CGPointMake(0, 1);
        
        //设置颜色数组
        //    gradientLayer.colors = @[(__bridge id)[UIColor blueColor].CGColor,
        //                                  (__bridge id)[UIColor redColor].CGColor];
        gradientLayer.colors = @[(__bridge id)startColor.CGColor,
                                 (__bridge id)endColor.CGColor];
        
        //设置颜色分割点(范围:0-1)
        gradientLayer.locations = @[@(0.5f), @(1.0f)];
    }
    

    实例如下:

    UIView *theView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, [UIScreen mainScreen].bounds.size.width, [UIScreen mainScreen].bounds.size.height)];
    [self.view addSubview:theView];
    [self.view setGradientLayer:mRGBColor(0, 226, 154) endColor:mRGBColor(0, 137, 108)];
    
    奋斗的七月
    注意:

    渐变区域的范围是 (0,0) -> (1,1)
    渐变层要添加在需要渐变视图的layer层

    相关文章

      网友评论

        本文标题:UIView的背景渐变色~~~

        本文链接:https://www.haomeiwen.com/subject/lugxfxtx.html