// // MJViewController.m // 03-Tom // // Created by apple on 13-11-24. // Copyright (c) 2013年 itcast. All rights reserved. // #import "MJViewController.h" @interface MJViewController () { NSDictionary *_dict; // 保存所有图片的个数 } @end @implementation MJViewController - (void)viewDidLoad { [super viewDidLoad]; // 1.获得tom.plist的全路径 NSBundle *bundle = [NSBundle mainBundle]; NSString *path = [bundle pathForResource:@"tom" ofType:@"plist"]; // 2.根据文件路径加载字典 _dict = [NSDictionary dictionaryWithContentsOfFile:path]; } - (void)playAnim:(int)count fliename:(NSString *)filename { // 1.创建可变数组 NSMutableArray *images = [NSMutableArray array]; // 2.添加图片 for (int i = 0; i<count; i++) { // 图片名 NSString *name = [NSString stringWithFormat:@"%@_%02d.jpg", filename, i]; // 全路径 NSString *path = [[NSBundle mainBundle] pathForResource:name ofType:nil]; // 加载图片(缓存) // UIImage *img = [UIImage imageNamed:name]; // 没有缓存 UIImage *img = [[UIImage alloc] initWithContentsOfFile:path]; [images addObject:img]; } // 3.设置动画图片(有顺序) _tom.animationImages = images;// 序列帧动画 // 4.只播放一次 _tom.animationRepeatCount = 1; // 5.设置动画的持续时间 _tom.animationDuration = 0.1 * count; // 5.开始动画 [_tom startAnimating]; } #pragma mark 监听所有的按钮点击 - (IBAction)btnClick:(UIButton *)sender { // 1.如果tom正在播放动画,直接返回 if (_tom.isAnimating) return; // 2.取出按钮文字 NSString *title = [sender titleForState:UIControlStateNormal]; // 3.获得图片数量 int count = [_dict[title] intValue]; // 4.播放动画 [self playAnim:count fliename:title]; } @end