摘要:
转载地址:http://www.iloss.me/?p=545协议分非正式协议和正式协议先说说非正式协议非正式协议在Obj-c中关键字虽然是interface,但是这个和C#中的借口并不完全相同。回忆之前学过的内容,我们定义一个类Sample时,会生成一个Sample.h,代码如下:#import <foundation foundation.h>@interface Sample:NSObject {}-(void) HelloWorld;@end它表明Sample类中,约定了应该有一个名为HelloWorld的方法(注:这里说的时应该,而不是必须)它只是一种君子协议。如果我们在 阅读全文
摘要:
簡單說明 Category, Protocol, Property, Fast Enumation的功能Category :可用來在現有的類別(如果沒有程式碼)中新增method,但不能用來新增instance varible。雖然也可用來覆載(override) method,但不建議這樣使用;如要改變己存在的method的動作,請用subclass的方式。Sample:PrettyPrintCategory.h#import <Foundation/NSArray.h> // if Foundation not already imported@interface NSArra 阅读全文
摘要:
http://blog.sina.com.cn/s/blog_538ee4a70100o9o2.html如果要从事Leopard或更高版本的MacOS程序开发使用Objective-C 2.0的垃圾回收机制,若要从事旧版本MacOS或iPhone开发则要全部阅读本章内容一、对象生命周期程序中的对象由生命周期,其周期包括:诞生(alloc或new)、生存(接受消息和执行操作)、交友(借助方法的组合和参数)和消亡(被释放)1、引用计数Cocoa采用了一种称为引用计数(保留计数)的技术:(1)每个对象有一个与之相关联的整数,称为他的引用计数器或保留计数器(2)当代码访问某个对象时,改代码将该对象保留 阅读全文
摘要:
http://blog.csdn.net/windows_star/article/details/6010347cocos2d中,layer的主要任务就是接受用户的触摸,在看本文之前,读者最好了解ios与用户交互的方式,最好也知道cocos2d中是怎么相应用户的触摸到各个layer的。 首先我们继承自标准CCSprite,并且遵循CCTargetedTouchDeleget或者CCStandadTouchDeleget view plain////TestSprite.h//touchTest////Createdbyjeffreyon10-11-12.//Copyright2010__M. 阅读全文
摘要:
假设drinkDetails是一个由Object组成的Array,且Object类有个birthDate属性,我们要根据它来对Array排序。方法一- (NSComparisonResult)compare:(id)otherObject { return [self.birthDate compare:otherObject];}NSArray *sortedArray;sortedArray = [drinkDetails sortedArrayUsingSelector:@selector(compare:)];方法二NSSortDescriptor *sortDescriptor... 阅读全文
摘要:
http://blog.csdn.net/sjzsp/article/details/6314903scroll view 原理 在滚动过程当中,其实是在修改原点坐标。当手指触摸后, scroll view会暂时拦截触摸事件,使用一个计时器。假如在计时器到点后没有发生手指移动事件,那么 scroll view 发送scroll view 原理 在滚动过程当中,其实是在修改原点坐标。当手指触摸后, scroll view会暂时拦截触摸事件,使用一个计时器。假如在计时器到点后没有发生手指移动事件,那么 scroll view 发送 tracking events 到被点击的 subview。假如在 阅读全文
摘要:
源地址:http://www.cocoachina.com/blog/blog.php?do=showone&uid=4039&type=blog&cid=&itemid=927一、 HelloWorld开始之前,我假想你已经看过了HelloWorld的源代码,并看了用户手册中关于HelloWorld的相关说明,而且已经大致明白了大多数内容。其实HelloWorld已经用极其简单的语言向你描述了Box2D物理引擎的运作机制,我们可以归纳一下步骤:1、 建立一个世界,这个世界基于一个b2AABB框,并设立了一个g值和一个是否允许休眠的bool型变量。2、 建立一个 阅读全文
摘要:
CCTransitionFade, //渐隐效果CCTransitionFadeTR, //碎片效果CCTransitionJumpZoom, //跳动效果CCTransitionMoveInL, //从左向右移动CCTransitionPageTurn, //翻页效果CCTransitionRadialCCW, //钟摆效果CCTransitionRotoZoom,//涡轮效果CCTransitionSceneOriented,//CCTransitionShrinkGrow, //渐远效果CCTransitionSlideInL, //左移CCTransitionSplitCols,//上 阅读全文
摘要:
cocos2d中从场景切换到UIViewController视图- (void) showUIViewController:(UIViewController *) controller{ [[DirectorsharedDirector] pause]; [UIViewbeginAnimations:nil context:NULL]; [UIViewsetAnimationDuration:.5]; [UIViewsetAnimationTransition:UIViewAnimationTransitionCurlUpforView:[[Director sharedDirector]. 阅读全文
摘要:
1.protocol用法 protocol顾名思义,就是联系两个东西的桥梁。翻译成中文就叫协议,protocol在实际编程中应用的比较少,但是cocoa的API中却大量用到了它。例如:cocoa编程中,如果你在UI上使用了Table View控件,最常用的一个方法numberOfRowsInTableView。它返回将要在Table View上显示条目的个数,但是这个Cocoa的API怎么使用哪?程序员直接调用么?显然不是,因为apple工程师写这个方法的时候,他们怎么知道程序员将来要在Table View上显示几行啊!那么下面我们就拿这个例子分析protocol到底是怎么工作的。 numbe 阅读全文