cocos2d基础知识-单例

来源:互联网 发布:java 读取文件进度条 编辑:程序博客网 时间:2024/05/16 08:24

cocos2的很好的利用了单例设计模式。单例模式:在程序生命中期里只被实例化一次的类。为了确保这一点,我们用类的一个静态方法来生成和访问对象。

因此,是通过sharede开头的方法来访问cocos2d的单例对象的。

一些常用到的cocos2d的单例类和访问他们的方法:

CCActionManager *sharedManager = [CCActionManager sharedManager];

CCDirectror *sharedDirector = [CCDirector sharedDirector];

CCSpriteFrameCache *sharedCache = [CCSpriteFrameCache sharedSpriteFrameCache];

CCTouchDispatcher *sharedDispatcher = [CCTouchDispatcher sharedDispatcher];

CDAudioManager *sharedManager = [CDAudioManager sharedManager];

SimpleAudioEngine *sharedEngine = [SimpleAudioEngine sharedEngine];

单例的好处是它可以在任何时间,任何地点被任何类所调用。接近于全局类的作用,像一个全局变量。如果需要在任何地方都能用到某些数据或者方法,单例是最好的方法。

例子:音频,任何一个类,不管是玩家还是敌人,菜单按钮,或者过场动画,都需要播放音乐,在这个时候使用单例,可以减少很多麻烦。另一个例子就是需要保存全局的游戏状态,比如说玩家军队的大小和每只部队排的数目,你可以把这些信息存到一个单例中,把这些信息从一个关卡,传到另一个关卡。

原创粉丝点击