笔记

代码如下:

#import "ViewController.h"

@interface ViewController ()

@property (weak, nonatomic) IBOutlet UIImageView *tom;

@end

@implementation ViewController

- (void)tomAnimationOfName:(NSString *) img andCount:(int)count

{

   //序列帧动画:让一组图片,和放电影一样,一张张的播放,动起来的效果

   //判断是否动画中,不可以同步

   if ([self.tom isAnimating]) {

       //直接结束动画操作方法,这里就是没有返回值,nil 不行

       return;

   }

   //开始肯定是存储图片,81个,用可变数组

   NSMutableArray *arrayImage = [NSMutableArray array];

   //遍历图片

   for (int i = 0; i < count; i++) {

       //类似 c,格式控制,不足两位0补齐

       NSString *name = [NSString stringWithFormat:@"%@_%02d.jpg", img, i];

       UIImage *image = [UIImage imageNamed:name];

       //添加到数组里

       [arrayImage addObject:image];

   }

   //然后开始动画

   //把图片放到animationImages,接受数组参数

   self.tom.animationImages = arrayImage;

   //设置时间间隔,81张图,图多就播的时间稍微长,否则短

   self.tom.animationDuration = arrayImage.count * 0.074;

   //设置重复次数

   self.tom.animationRepeatCount = 1;

   //开始动画

   [self.tom startAnimating];

   //结束动画

}

- (IBAction)head

{

   [self tomAnimationOfName:@"knockout" andCount:81];

}

- (IBAction)drink

{

   [self tomAnimationOfName:@"drink" andCount:81];

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容