iOS动画-定时对UIView进行翻转和抖动的方法

(翻转)方式一:

成都创新互联公司成立于2013年,先为凌海等服务建站,凌海等地企业,进行企业商务咨询服务。为凌海企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

[NSTimer scheduledTimerWithTimeInterval:3.f repeats:YES block:^(NSTimer * _Nonnull timer) {
      CABasicAnimation* rotationAnimation = [CABasicAnimation animation];;
      rotationAnimation = [CABasicAnimation animationWithKeyPath:@"transform.rotation.y"];
      rotationAnimation.toValue = [NSNumber numberWithFloat: M_PI * 2.0 ];
      rotationAnimation.duration = 1;
      // 切换界面保证动画不停止
      rotationAnimation.removedOnCompletion = NO;
      rotationAnimation.repeatCount = 1;
      [self.bindCardImageView.layer addAnimation:rotationAnimation forKey:@"rotationAnimation"];
    }];

(翻转)方式二(这种方式较好一些):

CABasicAnimation *waitAnimation = [CABasicAnimation animation];
    waitAnimation.toValue = [NSNumber numberWithFloat:1.0];
    waitAnimation.duration = 3.f;
    waitAnimation.beginTime = 3.f;

    CABasicAnimation* rotationAnimation = [CABasicAnimation animationWithKeyPath:@"transform.rotation.y"];
    rotationAnimation.toValue = [NSNumber numberWithFloat: M_PI * 2.0 ];
    rotationAnimation.duration = 1.f;

    CAAnimationGroup *group = [CAAnimationGroup animation];
    group.duration = 4.f;
    group.repeatCount = CGFLOAT_MAX;
    group.removedOnCompletion = NO;

    [group setAnimations:@[waitAnimation, rotationAnimation]];

    [self.bindCardImageView.layer addAnimation:group forKey:@"bindCardImageViewAnimation"];

抖动:

CABasicAnimation* shake = [CABasicAnimation animationWithKeyPath:@"transform.rotation.z"];
  //设置抖动幅度
  shake.fromValue = [NSNumber numberWithFloat:-0.2];
  shake.toValue = [NSNumber numberWithFloat:+0.2];
  shake.duration = 0.1;
  shake.autoreverses = YES; //是否重复
  shake.repeatCount = 3;

  [itemView.iconImageView.layer addAnimation:shake forKey:@"imageView"];

以上这篇iOS动画-定时对UIView进行翻转和抖动的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持创新互联。

本文名称:iOS动画-定时对UIView进行翻转和抖动的方法
本文URL:https://www.cdcxhl.com/article30/jocopo.html

成都网站建设公司_创新互联,为您提供Google企业网站制作网站营销App开发手机网站建设网站设计

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

网站建设网站维护公司