首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 操作系统 >

cocos2d应用半单例

2012-09-01 
cocos2d使用半单例cocos2d: 使用半单例把MultiLayerScene设置成半单例,目的是让别的对象可以直接访问Multi

cocos2d使用半单例

cocos2d: 使用半单例

把MultiLayerScene设置成半单例,目的是让别的对象可以直接访问MultiLayerScene

static MultiLayerScene* multiLayerSceneInstance;+(MultiLayerScene*) sharedLayer{    NSAssert(multiLayerSceneInstance != nil, @"MultiLayerScene not available!");    return multiLayerSceneInstance;}//初始化MultiLayerScene-(id) init{if ((self = [super init])){multiLayerSceneInstance = self;// GameLayer层GameLayer* gameLayer = [GameLayer node];[self addChild:gameLayer z:1 tag:LayerTagGameLayer];}return self;}-(void) action1{    // do something}-(void) dealloc{    multiLayerSceneInstance = nil;    // don't forget to call "super dealloc"    [super dealloc];}

 访问半单例方法,如在GameLayer层中可以这样访问MultiLayerScene中的action1方法:

[[MultiSceneLayer shareLayer] action1];

半单例与普通的单例类不同,任何时候只存在一个MultiLayerScene的实例,它不能被用来初始化MultiLayerScene。

1楼wang2dan昨天 14:37
挺不错的

热点排行