猫学习IOS(四)UI半小时就搞定Tom猫
阿土 首先对影响
下载项目的源材料: 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。项目。项目素材。。。。
。
) 。————我就是太多学不完了,想找几个人陪我一起纠结。欢迎大家来交流。
版权声明:本文博客原创文章。博客,未经同意,不得转载。
猫学习IOS(四)UI半小时就搞定Tom猫的更多相关文章
- (素材源代码)猫猫学IOS(四)UI之半小时搞定Tom猫
下载地址:http://download.csdn.net/detail/u013357243/8514915 以下是执行图片展示 制作思路以及代码解析 猫猫学IOS(四)UI之半小时搞定Tom猫这里 ...
- AJ学IOS(04)UI之半小时搞定Tom猫
AJ分享 必须精品 效果图 曾经风靡一时的tom猫其实制作起来那是叫一个相当的easy啊 功能全部实现,(关键是素材,没有素材的可以加我微信) 新手也可以很快的完成tom这个很拉轰的ios应用哦 然 ...
- 【数据结构】 最小生成树(四)——利用kruskal算法搞定例题×3+变形+一道大水题
在这一专辑(最小生成树)中的上一期讲到了prim算法,但是prim算法比较难懂,为了避免看不懂,就先用kruskal算法写题吧,下面将会将三道例题,加一道变形,以及一道大水题,水到不用高级数据结构,建 ...
- 怎样在两小时内搞定 OpenStack 部署?(转)
怎样在两小时内搞定 OpenStack 部署? OpenStack的安装是一个难题,组件众多,非常麻烦.如果手工部署OpenStack,可能需要好几天,使用RDO,就是几个命令,再加一两个小时的等待. ...
- 猫学习IOS(十五)UI以前的热的打砖块游戏
猫分享.必须精品 材料代号地址:http://blog.csdn.net/u013357243/article/details/44814523 原文地址:viewmode=contents" ...
- 猫学习IOS(三)UI纯代码UI——图片浏览器
猫分享.必须精品 看看效果 主要实现相似看新闻的一个界面,不用拖拽,纯代码手工写. 首先分析app能够非常easy知道他这里有两个UILabel一个UIImageView还有两个UIButton 定义 ...
- 猫学习IOS(五岁以下儿童)UI之360其他下载管理器广场UI
猫分享.必须精品 下载材料:http://blog.csdn.net/u013357243/article/details/44486651 先看效果 主要是完毕了九宫格UI的搭建 代码 - (voi ...
- iOS 3DES加密解密(一行代码搞定)
3DES(或称为Triple DES)是三重数据加密算法(TDEA,Triple Data Encryption Algorithm)块密码的通称.它相当于是对每个数据块应用三次DES加密算法.由于计 ...
- iOS开发一行代码系列:一行搞定数据库
原理 iOS 和 SQL的相应关系 Model类结构 => SQL表结构 Model实例 => SQL表中的一行 Model实例的属性 => S ...
随机推荐
- Linux下安装Python3.3.0
Linux下安装Python3.3.0_路易_新浪博客 Linux下安装Python3.3.0 (2013-01-08 11:45:37)
- 采用 audio 和 embed 实现浏览器的兼容性页音频播放
采用 audio 和 embed 实现浏览器的兼容性页音频播放 采用 audio 和 embed 实现浏览器的兼容性页音频播放 学习参考源代码如下所示: function playSound() { ...
- MyEclipse 2013 新功能介绍
http://pan.baidu.com/share/link?shareid=3310814720&uk=4012618212 下载地址 HTML5 Mobile Projects MyEc ...
- Java中对不变的 data和object reference 使用 final
Java中对不变的 data和object reference 使用 final 许多语言都提供常量数据的概念,用来表示那些既不会改变也不能改变的数据,java关键词final用来表示常量数据.例如: ...
- uva 10066 The Twin Towers (最长公共子)
uva 10066 The Twin Towers 标题效果:最长公共子. 解题思路:最长公共子. #include<stdio.h> #include<string.h> # ...
- DOM解析XML文件实例
XML文件: response: <?xml version="1.0"?> <soap:Envelope xmlns:soap="http://www ...
- SWT的ListVierer的使用
package com.test; import java.util.ArrayList; import java.util.List; import model.People; import org ...
- cocos2dx 3.1从零学习(六)——CocosStudio(VS2013project导入及环境设置)
导入libCocosStudio.libExtensions.libGUI 新建的project例如以下图: 加入现有项目 右键解决方式.例如以下操作: watermark/2/text/aHR0cD ...
- swift 新功能介绍
原文链接:http://www.cocoachina.com/applenews/devnews/2014/0617/8857.html 假设你和我一样,准备好好看看苹果的 Keynote,兴奋地准备 ...
- a标签中调用js的几种方法
1. a href="javascript:js_method();" 这是我们平台上常用的方法,但是这种方法在传递this等参数的时候很容易出问题,而且javascript:协议 ...