iOS中的几种动画模式(iOS动画)

iOS中有许许多多的动画方式今天先给大家介绍最简单的两种:头尾式动画和帧动画

一. 所谓头尾式动画,顾名思义,就是在需要动画的代码开始的时候设置开始动画,在需要动画的代码结束的时候结束动画,这就是简单的头尾式动画,二话不多说,上代码:

 
    //开始动画
    [UIView beginAnimations:nil context:nil];
    //设置动画延迟执行时间
    [UIView setAnimationDelay:2];
    //设置动画执行过程需要时间
    [UIView setAnimationDuration:2];
//这里加需要动画的代码 //结束动画 [UIView commitAnimations];

二. 帧动画,相信对做flash的人来说帧动画相当熟悉,相信大家都记得小时候看过的动画,那些动画就是由一页一页的图案组成,然后快速的进行切换,在我们的视觉感官上就形成了动画!帧动画需要很多一帧一帧的图片.

@interface ViewController ()
@property (nonatomic,weak)UIImageView *imgView;
@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
   
    //imgView.animationImages = "装有帧动画需要的图片的数组"
    //设置动画重复次数
    self.imgView.animationRepeatCount = 1;
    
    //设置动画播放时间(2秒)
    self.imgView.animationDuration = 2;
    
    //开始动画
    [self.imgView startAnimating];
    
    //但是这种动画需要占用很大内存,所以在播放完毕后要清空内存,但是清空内存的时候要加延迟时间,否则动画还没有播放就已经释放了
    CGFloat delay = self.imgView.animationDuration +1.0;
    [self performSelector:@selector(clearCache) withObject:nil afterDelay:delay];
    
}
- (void)clearCache{
    self.imgView.animationImages = nil;
}

 三. block动画:

[UIView animateWithDuration:1.5 animations:^{
      //想要做的动画代码
    } completion:^(BOOL finished) {
       //当动画执行完毕后需要执行的代码
   }];
全身心修练iOS
原文地址:https://www.cnblogs.com/ZMiOS/p/4803764.html