btn.titleLabel.numberOfLines=0;
[btn.titleLabel sizeToFit];
CAShapeLayer* maskLayer = [CAShapeLayer layer];
maskLayer.path = [UIBezierPath bezierPathWithRect:btn.titleLabel.bounds].CGPath;
btn.titleLabel.layer.mask = maskLayer;
CAKeyframeAnimation* keyFrame = [CAKeyframeAnimation animation];
keyFrame.keyPath = @"transform.translation.x";
keyFrame.values = @[@(0), @(-30), @(0)];
keyFrame.repeatCount = NSIntegerMax;
keyFrame.duration = 0.6 * btn.titleLabel.text.length;
keyFrame.timingFunctions = @[[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut], [CAMediaTimingFunction functionWithControlPoints:0 :0 :0.5 :0.5]];
// keyFrame.delegate = self;
[btn.titleLabel.layer addAnimation:keyFrame forKey:nil];
btn 跑马灯效果
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 1 CALayer IOS SDK详解之CALayer(一) http://doc.okbase.net/Hell...
- >生活和艺术一样,最美的永远是曲线。--爱德华布尔沃-利顿 在第九章“图层时间”中,我们讨论了动画时间和`CAMe...
- 前言 在前端开发中少不了动画的元素,官方提供了我们很多不错的属性动画,但有时满足不了策划的需求,这时就需要我们自定...
- 先看看CAAnimation动画的继承结构 CAAnimation{ CAPropertyAnimation { ...