iOS中有许许多多的动画方式今天先给你们介绍最简单的两种:头尾式动画和帧动画数组
一. 所谓头尾式动画,顾名思义,就是在须要动画的代码开始的时候设置开始动画,在须要动画的代码结束的时候结束动画,这就是简单的头尾式动画,二话很少说,上代码:动画
//开始动画 [UIView beginAnimations:nil context:nil]; //设置动画延迟执行时间
[UIView setAnimationDelay:2];
//设置动画执行过程须要时间
[UIView setAnimationDuration:2]; //这里加须要动画的代码 //结束动画 [UIView commitAnimations];
二. 帧动画,相信对作flash的人来讲帧动画至关熟悉,相信你们都记得小时候看过的动画,那些动画就是由一页一页的图案组成,而后快速的进行切换,在咱们的视觉感官上就造成了动画!帧动画须要不少一帧一帧的图片.atom
@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动画:spa
[UIView animateWithDuration:1.5 animations:^{ //想要作的动画代码 } completion:^(BOOL finished) { //当动画执行完毕后须要执行的代码 }];