博客园  :: 首页  :: 新随笔  :: 订阅 订阅  :: 管理

2012年4月24日

摘要: 应用程序的委托(官方资料) 监控应用程序的高级行为是应用程序委托对象的责任,而应用程序委托对象是您提供的定制类实例。委托是一种避免对复杂的UIKit对象(比如缺省的UIApplication对象)进行子类化的机制。在这种机制下,您可以不进行子类化和方法重载,而是将自己的定制代码放到委托对象中,从而避免对复杂对象进行修改。当您感兴趣的事件发生时,复杂对象会将消息发送给您定制的委托对象。您可以通过这种“挂钩”执行自己的定制代码,实现需要的行为。 应用程序的委托对象负责处理几个关键的系统消息。每个iPhone应用程序都必须有应用程序委托对象,它可以是您希望的任何类的实例,但需要遵循UIAppli.. 阅读全文

posted @ 2012-04-24 21:22 扬名 阅读(3606) 评论(1) 推荐(0)

摘要: 第二个iPhone应用程序:“Say Hello” 阅读全文

posted @ 2012-04-24 14:15 扬名 阅读(204) 评论(0) 推荐(0)

摘要: 1.当触摸被取消(比如触摸过程中被来电打断),就会调用touchesCancelled:withEvent方法。 2.检测tapCount可以放在touchesBegan也可以touchesEnded,不过一般后者跟准确,因为touchesEnded可以保证所有的手指都已经离开屏幕,这样就不会把轻击动作和按下拖动等动作混淆。 3.轻击操作很容易引起歧义,比如当用户点了一次之后,并不知道用户是想单击还是只是双击的一部分,或者点了两次之后并不知道用户是想双击还是继续点击。为了解决这个问题,一般可以使用“延迟调用”函数。-(void)touchesEnded:(NSSet *)touches... 阅读全文

posted @ 2012-04-24 13:21 扬名 阅读(863) 评论(0) 推荐(0)

摘要: 原文作者Andrew Huang<bluedrum@163.com> 转载请注明作者 @selector()基本可以等同C语言的中函数指针,只不过C语言中,可以把函数名直接赋给一个函数指针,而Object-C的类不能直接应用函数指针,这样只能做一个@selector语法来取. 它的结果是一个SEL类型。这个类型本质是类方法的编号(函数地址)?因此我们有如下代码。一.取得selector值.C函数指针int add(int val) { return val+1; } int (* c_func)(int val); //定义一个函数指针变量 c_func = add ;//把函数a 阅读全文

posted @ 2012-04-24 12:58 扬名 阅读(359) 评论(0) 推荐(0)

摘要: 应用场景:开发Cocos2d游戏时与NPC的对话等分析:对于一个(CCLabelTTF*) label,如果能生成一个包含换行符\r\n的NSString字符串strTemp,利用substringToIndex就可以生成各种从起始位置开始的子串,再配合一个定时器定时去更新substringToIndex的参数Index,接着[label setString];就可显示打字效果。 阅读全文

posted @ 2012-04-24 11:41 扬名 阅读(2098) 评论(0) 推荐(0)

摘要: 作为程序员,首先我们要按照正常流程分析需求之后,在编码阶段首先要枚举所有用户的触发情况(包括合法的,非法的),然后为每个触发情况按照完整逻辑来编写,当然这是在有很好的架构后,划分模块给程序员时要用这些思维,会减少很多在测试时出现的bug。1)了解业务流程还更要了解为什么业务要这样?很多业务流程都是可以简化,优化,甚至不必要。2)需求分析需要考虑哪么是必需的业务功能,哪些是锦上添花的业务功能。3)然后应该是设计,设计一个简单和耦合度低的系统,复杂和头痛的东西通常就是需要简化和推敲的东西。 阅读全文

posted @ 2012-04-24 11:36 扬名 阅读(230) 评论(0) 推荐(0)

摘要: 1)srand((unsigned)time(0));int i = rand() % 5;2)srandom(time(0));int i = random() % 5;3)通过arc4random() 获取0到x-1之间的整数://arc4random有两个好处,一个是它的范围比rand()大两倍,另一个是它不需要srand()去生成种子inti=arc4random()%x; 阅读全文

posted @ 2012-04-24 09:30 扬名 阅读(283) 评论(0) 推荐(0)