cocos2d学习笔记 CCLabelTTF和CCLabelBMFont

当我们在游戏中添加文字时,比如分数,金钱之类的,就需要用到CCLabelTTF或CCLabelBMFont了


CCLabelTTF只支持系统的字体,或者你自行添加的ttf字体,用法:


CCLabelTTF *label = [CCLabelTTF labelWithString:@"Hello World" fontName:@"Marker Felt" fontSize:64];


CCLabelBMFont是CCSpriteBatchNode的子类,可以理解为一个font atlas,用法


CCLabelBMFont *gameBeginLabel =          [CCLabelBMFont labelWithString:@"Game Start" fntFile:@"SpaceVikingFont.fnt"];


因为CCLabelTTF和CCLabelBMFont都是CCNode的子类,所以他们也可以通过runAction:做一些动画效果:


[gameBeginLabel setPosition:ccp(screenSize.width/2,screenSize.height/2)];          // 2        

[self addChild:gameBeginLabel];                                    // 3        

id labelAction = [CCSpawn actions:                          

                              [CCScaleBy actionWithDuration:2.0f scale:4],                           

                              [CCFadeOut actionWithDuration:2.0f],                           

                             nil];                                          // 4         

[gameBeginLabel runAction:labelAction];


另外,他们还有anchor point的概念:

[gameBeginLabel setAnchorPoint: ccp(0.5f, 0.5f)];//默认

锚点范围为(0,0)到(1,1)之间,默认是(0.5,0.5),对象在变化的时候会以锚点为基准进行,如果锚点设为(0,0),那么上面放大的动画会朝向右上的位置进行放大

你可能感兴趣的:(cocos2d学习笔记 CCLabelTTF和CCLabelBMFont)