添加渐变色

可以参照SHLineGraphView 在方法drawPlot:(SHPlot *)plot 中 给他的backgroundLayer 添加如下代码

声明一个layer为他的backGroundLayer命名为backlayer

 UIColor *colorFill;
if ([[[UIDevice currentDevice]systemVersion]floatValue] >= 10) {
    colorFill = [UIColor   colorWithDisplayP3Red:76 green:156 blue:246 alpha:0.8];
}else {
    colorFill = [UIColor colorWithRed:76 green:156 blue:246 alpha:0.8];
}
CAGradientLayer *gradientLayer = [CAGradientLayer layer];
gradientLayer.frame =self.bounds ;// self.view.frame;
gradientLayer.colors = @[(__bridge id)UIColorFromRGB(0x489AF6).CGColor ,
                         (__bridge id)colorFill.CGColor];//4C9CF6

gradientLayer.locations=@[@0.5,@1.0];
gradientLayer.startPoint = CGPointMake(0,0);
gradientLayer.endPoint = CGPointMake(0,1);
[_backLayer addSublayer:gradientLayer];//加上渐变层

CAShapeLayer *arc = [CAShapeLayer layer];
arc.path =backgroundLayer.path;
arc.fillColor = colorFill.CGColor;
arc.strokeColor = colorFill.CGColor;
arc.lineWidth = 1;
gradientLayer.mask=arc;

注:10以后,颜色的赋值增加了一方法 ,如果在模拟器的层级中可以看到渐变色,但是真机和模拟器却看不到,可以试试改一下颜色的展示方法:用colorWithDisplayP3Red

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

推荐阅读更多精彩内容