素材:链接: http://pan.baidu.com/s/1bnuQRQf 密码: 4gm7
1首先建立Xcode工程(点击Create a new Xcode project)
2选择iOS-->application-->Single View Application-->Next
3 Product Name 填写TomcatGame,Language选择Object-C语言,然后Next
4选择好保存位置后点击Next,然后去掉Auto Layout对勾
5选择一个size,为了测试方便选择3.5英寸的屏幕大小
6在storyboard上拖入一个image View 覆盖整个屏幕
7.点击assistant editor打开第二屏,选中image View按住Ctrl同时拖到@interface ViewController中,name为tomImageView,点击connect
8点击单屏,打开素材文件夹,将图片文件夹分别拖到相应的位置
9点击main.storyboard,选中image View,赋值angry_00.jpg
10实现点击头部的动作,首先为头部设置button,搜索框输入button,将button控件拖到tomcat的头部,并调节button合适的大小
11将button的格式调节为自定义(由System-->Custom),默认标题(Default Title)设为头部图片的文件夹文字(Knockout),文本颜色(Text Color)设为Clear Color
12选择assistant editor分屏,将Knockout的button拖到实现文件中,并选择Type为UIButton,Name命名为touchHeadOnClick
13编写主要代码,并以iPhone4s模拟器运行
- (IBAction)touchHeadOnClick:(UIButton *)sender {
//1.首先创建图片数组
NSMutableArray *tomImages = [NSMutableArray array];//可变数组
for (int i = 0; i < 81; i++) {
NSString *imageName = [NSString stringWithFormat:@"%@_%02d.jpg",@"knockout",i];
//创建图片的第一种方法(图片较多时会内存溢出,不建议用)
// UIImage *image = [UIImage imageNamed:imageName];
//创建图片的第二种方法,不会有内存溢出问题
NSString *path = [[NSBundle mainBundle]pathForResource:imageName ofType:nil];
UIImage *image = [UIImage imageWithContentsOfFile:path];
//每创建出一张图片就将其储存到可变数组中
[tomImages addObject:image];
}
//2.设置动画过程
//2.1添加动画执行的图片数组
[self.tomImageView setAnimationImages:tomImages];
//2.2设置动画执行的时间
[self.tomImageView setAnimationDuration:self.tomImageView.animationImages.count * 0.1];
//2.3设置动画执行次数(1次)
[self.tomImageView setAnimationRepeatCount:1];
//2.4设置动画开始执行
[self.tomImageView startAnimating];
//3.动画结束后清空数组
//稍微容易理解的笨方法
// [self performSelector:@selector(clearImages) withObject:nil afterDelay:self.tomImageView.animationDuration];
//直接让imageView重新执行一个setAnimationImages:方法
[self.tomImageView performSelector:@selector(setAnimationImages:) withObject:nil afterDelay:self.tomImageView.animationDuration];
}
- (void)clearImages
{
self.tomImageView.animationImages = nil;
}
点击模拟器中tomcat的头部,可以看到效果动画
原文:http://www.cnblogs.com/starainDou/p/4972856.html