今日头条的加载页面有这么一个动画
image
效果不错,可以借鉴到APP中。不过网上没有现成OC的demo,就自己实现了一个,
ok,直接上代码。
UILabel *lb = [[UILabel alloc]initWithFrame:CGRectMake(0, 100, 320, 70)];
lb.text = @"闪动加载";
lb.textColor = [UIColor lightGrayColor];
lb.font = [UIFont boldSystemFontOfSize:40];
[self.view addSubview:lb];
CAGradientLayer *colorLayer = [CAGradientLayer layer];
colorLayer.frame = CGRectMake(0, 0, 320, 320);
colorLayer.position = self.view.center;
[self.view.layer addSublayer:colorLayer];
colorLayer.colors = @[(__bridge id)[UIColor lightGrayColor].CGColor,(__bridge id)[UIColor grayColor].CGColor,(__bridge id)[UIColor lightGrayColor].CGColor];
colorLayer.locations = @[@(- 0.2),@(- 0.1),@(0)];
colorLayer.startPoint = CGPointMake(0, 0.6);
colorLayer.endPoint = CGPointMake(1, 0.4);
colorLayer.mask = lb.layer;
[NSTimer scheduledTimerWithTimeInterval:1.5 repeats:YES block:^(NSTimer * _Nonnull timer) {
CABasicAnimation *fadeA = [CABasicAnimation animationWithKeyPath:@"locations"];
fadeA.fromValue = @[@(-0.2), @(-0.1),@(0)] ;
fadeA.toValue = @[@(1.0),@(1.1),@(1.2)] ;
fadeA.duration = 2 ;
[colorLayer addAnimation:fadeA forKey:nil ];
}];
这里使用的文字,需求是图片的话,可以直接用UIImageView替换
好了,以上就是这个动画的全部了,喜欢的同学点个赞吧😊~