美文网首页
iOS渐变色设置

iOS渐变色设置

作者: 王看山 | 来源:发表于2021-12-31 15:23 被阅读0次

因项目中用到渐变的UI,找了一圈,有好几种方法来实现,最简单的做法就是让UI切图,省事。但是UI不好找,那只能自己搞咯。我这里用了masonry布局的,因此用延时来取到frame值,带到渐变设置的layer,对应赋值,最后添加到对应view的layer就ok了。其实还有几种方式可以实现,但万变不离其宗,想玩可以自己去试试其他方法...

dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.2 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
    [[self class] setGradientView:process fromColor:[UIColor colorWithHexString:@"#1C78FF"] toColor:[UIColor colorWithHexString:@"#17B3FF"]];
});

+ (void)setGradientView:(UIView *)view fromColor:(UIColor *)fromColor toColor:(UIColor *)toColor {
    //gradient设置渐变色进度条
    CAGradientLayer *gl = [CAGradientLayer layer];
    gl.frame = CGRectMake(0, 0, view.size.width, view.size.height);
    gl.startPoint = CGPointMake(0, 0.5);
    gl.endPoint = CGPointMake(1, 0.5);
    gl.colors = @[(__bridge id)fromColor.CGColor, (__bridge id)toColor.CGColor];
    gl.locations = @[@(0), @(1.0f)];
    [view.layer addSublayer:gl];
}

相关文章

网友评论

      本文标题:iOS渐变色设置

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