阿土 首先对影响

下载项目的源材料: Tom猫游戏代码iOS 素http://blog.csdn.net/u013357243/article/details/44457357

效果图

以前风靡一时的tom猫事实上制作起来那是叫一个相当的easy啊

功能所有实现。(关键是素材。没有素材的能够加我微信)

新手也能够非常快的完毕tom这个非常拉轰的ios应用哦

做过android的我表示,android党默哀下把。那个做起来真心痛苦。。

。。









然后呢你须要准备这些素材。

。。



拖拽控件吧。由于这一个项目用到的不是非常多,用代码写太累了。得不偿失,大家有兴趣的能够自己谢谢纯代码做ui的练习哦不会的能够參考我的前面一篇

猫猫学IOS(三)UI之纯代码实现UI——图片查看器

拖拽控件,那些东西呢 看图片吧

就是这些东西。那个名字的地方在代码中又妙用

另外UIButton的tag属性也被加入了奇异的数字

假设不会拖拽控件的能够看 猫猫学IOS(一)UI之Hello World与加法计算器

以下上代码

代码

//调用button监听方法
-(IBAction)tomAction:(UIButton *)button{
[self tomAnimationWithName:button.currentTitle count:button.tag];
}
//让tom猫动起来,name是要运行动作的名字 count是图片的个数
-(void) tomAnimationWithName:(NSString *) name count:(NSInteger) count
{
//假设动画正在播放就返回不运行
if (self.tom.isAnimating) {
return;
}
//序列帧动画 播放一组图片
//指定动绘图片的数组
NSMutableArray *arrayM = [NSMutableArray array];
//加入动画播放的素材
for (int i = 0; i<count; i++) {
NSString *imageName = [NSString stringWithFormat:@"%@_%02d.jpg",name,i]; // UIImage *image = [UIImage imageNamed:imageName];
// 得到全路径名字
NSString *path = [[NSBundle mainBundle] pathForResource:imageName ofType:nil];
UIImage *image = [UIImage imageWithContentsOfFile:path];
arrayM[i] = image;
}; //把操作好的UIImage图片放到UIImageView的animationImages其中 把图片数组放Tom控件中
self.tom.animationImages = arrayM;
//设置运行一次
[self.tom setAnimationRepeatCount:1];
//设置运行时间
self.tom.animationDuration = arrayM.count * 0.075; //開始运行动画
[self.tom startAnimating]; //结束动画后,清理动画数组
[self.tom performSelector:@selector(setAnimationImages:) withObject:nil afterDelay:self.tom.animationDuration];
}

这里就是我们要用到的代码了。记得要给弄好的代码前面的圈圈连到ui上面,否则点不点都无用的

你敢相信吗,tom猫就这么几行代码就完毕了,不到一个屏幕,大多数还是凝视。

说说应该注意的地方吧

这里面内存管理特别重要,我们并没实用ios建议 我们用的

[UIImage imageNamed:name];

而是用了:

[UIImage imageWithContentsOfFile:path]。

由于这样我们能够更完美的释放内存

内存在ios中相当重要。客户体验一直是苹果提醒的(据说android5.0还是5.1又漏了。。

。事实上安卓真的不错。我没有黑android的意思哦,仅仅是希望android能更加茁壮的成长,更加完好。)

重构_图像的实例化

重构–抽代替码

方法:

1> 将反复代码拷贝到新的方法中

2> 依据须要调整參数

关于图像的实例化

imageNamed:系统推荐使用的,可是图像实例化之后的释放由系统负责

假设要自己释放图片。不能使用imageNamed方法!

而须要使用imageWithContentsOfFile

提示:假设放在Images.xcassets中的图片,不能使用imageWithContentsOfFile

Images.xcassets中不要 存放大的,不经常使用的图片

PS1.须要学习资料的能够加我微信 znycat(标注从哪看到的,学习资料都免费,包含视频。ppt。项目。项目素材。。。。

) 。————我就是太多学不完了,想找几个人陪我一起纠结。欢迎大家来交流。

版权声明:本文博客原创文章。博客,未经同意,不得转载。

最新文章

  1. SQL行转列+动态拼接SQL
  2. 关于GPL的一些知识
  3. Ubuntu 安装桌面且远程连接
  4. WampServer Version 2.5 bug修改
  5. 我对javascript的自以为是
  6. AutoCompleteTextView使用 监听
  7. [经典算法] 字符串搜索Boyer-Moore
  8. 从NIB中加载VIEW
  9. Graphviz-Gdot语言学习
  10. Android控件RecyclerView与ListView的异同
  11. Nape 获取碰撞点加特效
  12. keepalived 安装配置
  13. TCP/IP协议学习(一)
  14. MongoDB数据库简单操作
  15. virtio,macvtap,sriov
  16. 051 Kafka的安装
  17. 输出的数据格式是如何决定的-------Asp.net WebAPI学习笔记(二)
  18. sql 题目
  19. Windows 2008开启远程桌面连接
  20. python 3.6 setup

热门文章

  1. codeforces#253 D - Andrey and Problem里的数学知识
  2. WPF与混淆器
  3. 【前端攻略】:玩转图片Base64编码(转)
  4. 关于git的ssh-key:解决本地多个ssh-key的问题
  5. hibernate 一对多,多对一,多对多实体映射完美解决方案(再也不会糊涂了,哈哈)
  6. C++ Primer 学习笔记_57_类和数据抽象 --管理指针成员
  7. Android 动态显示和隐藏软键盘
  8. Mysql 当安装完成后不执行 mysql 和 performance_schema 数据库
  9. Basic脚本解释器移植到STM32
  10. ZOJ 2680 Clock()数学