给layer添加抖动效果分类

首先给 CALayer 添加一个 分类, 然后再.h中声明一个shake方法
-(void)shake;
在.m中实现方法

-(void)shake{
  CAKeyframeAnimation *kfa = [CAKeyframeAnimation animationWithKeyPath:@"transform.translation.x"];
  CGFloat s = 5;
  kfa.values = @[@(-s),@(0),@(s),@(0),@(-s),@(0),@(s),@(0)];
  //时长
  kfa.duration = 0.3f;
  //重复
  kfa.repeatCount = 2;
  //移除
  kfa.removedOnCompletion = YES;
  [self addAnimation:kfa forKey:@"shake"];
}

这样就可以很方便的给layer添加抖动动画效果

使用如下
//添加一个shake动画
1.给一个自定义label添加
[self.layer shake]
2.给viewController添加
[self.view.layer shake];

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

推荐阅读更多精彩内容

  • 在iOS中随处都可以看到绚丽的动画效果,实现这些动画的过程并不复杂,今天将带大家一窥ios动画全貌。在这里你可以看...
    每天刷两次牙阅读 8,586评论 6 30
  • 在iOS中随处都可以看到绚丽的动画效果,实现这些动画的过程并不复杂,今天将带大家一窥iOS动画全貌。在这里你可以看...
    F麦子阅读 5,152评论 5 13
  • "小画板程序"完成"小画板"程序。 下载地址:http://git.oschina.net/changyou/my...
    _浅墨_阅读 704评论 0 5
  • 在iOS实际开发中常用的动画无非是以下四种:UIView动画,核心动画,帧动画,自定义转场动画。 1.UIView...
    请叫我周小帅阅读 3,179评论 1 23
  • >复杂的组织都是专门化的 >Catharine R. Stimpson 到目前为止,我们已经探讨过`CALayer...
    夜空下最亮的亮点阅读 1,093评论 0 2