UIView 添加闪烁的渐变光

CGRect gradientRect=CGRectMake(- imageView3.bounds.size.width*1.5, 0, 4 * imageView3.bounds.size.width, imageView3.bounds.size.height);
    CAGradientLayer *gradientLayer = [CAGradientLayer layer];
    gradientLayer.frame =gradientRect;
    gradientLayer.colors = @[(id)hexColor(bb975e).CGColor,(id)[UIColor whiteColor].CGColor,(id)hexColor(bb975e).CGColor];
    gradientLayer.locations = @[@(0.25),@(0.5),@(0.75)];
    gradientLayer.startPoint = CGPointMake(0, 0.5);
    gradientLayer.endPoint = CGPointMake(1, 0.5);
    gradientLayer.position = CGPointMake(imageView3.bounds.size.width*0.5, imageView3.bounds.size.height/2.0);
    [imageView3.layer addSublayer:gradientLayer];
    
    CALayer *maskLayer = [CALayer layer];
    maskLayer.frame =CGRectOffset(imageView3.bounds, imageView3.bounds.size.width*1.5, 0);
    maskLayer.contents = (__bridge id)([UIImage imageNamed:@"launchImage3"].CGImage);
    gradientLayer.mask = maskLayer;
    
    CABasicAnimation* fadeAnim = [CABasicAnimation animationWithKeyPath:@"locations"];
    fadeAnim.fromValue = @[@(0.0),@(0.0),@(0.25)];
    fadeAnim.toValue = @[@(0.75),@(1.0),@(1.0)];
    fadeAnim.duration=2;
    fadeAnim.repeatCount = CGFLOAT_MAX;
    [gradientLayer addAnimation:fadeAnim forKey:nil];
原文地址:https://www.cnblogs.com/dhui69/p/6170059.html