我正在尝试创建名为" Start"的CCButton。在cocos2d v3中使用CCLableBMFont标签作为按钮图像。但我似乎无法将标签置于v3中的CCButton中。 任何帮助/建议将不胜感激。
答案 0 :(得分:1)
我认为你不能将CCLableBMFont
应用于CCButton。查看documentation,唯一可用的选项是:
+ (id)buttonWithTitle:(NSString *)title fontName:(NSString *)fontName fontSize:(float)size
或
+ (id)buttonWithTitle:(NSString *)title spriteFrame:(CCSpriteFrame *)spriteFrame
以及这两种情况的几种变体。因此,我认为您必须使用精灵或带有TTF字体的标签作为按钮背景。
答案 1 :(得分:0)
这是我添加到当前项目中的实用程序功能:
+(CCButton *)smallButtonWithLabel:(NSString *)button_label;
实施:
+(CCButton *)smallButtonWithLabel:(NSString *)button_label
{
CCButton *button = [CCButton buttonWithTitle:nil spriteFrame:[CCSpriteFrame frameWithImageNamed:@"dlg-sml-btn-bg-s.png"] highlightedSpriteFrame:[CCSpriteFrame frameWithImageNamed:@"dlg-sml-btn-bg-t.png"] disabledSpriteFrame:[CCSpriteFrame frameWithImageNamed:@"dlg-sml-btn-bg-s.png"]];
[button setBackgroundOpacity:0.5 forState:CCControlStateDisabled];
CCLabelBMFont *label = [CCLabelBMFont labelWithString:button_label fntFile:SS_FONT_48_24_MULTI width:button.contentSize.width alignment:CCTextAlignmentCenter];
label.position = ccp(0.5, 0.5);
label.positionType = CCPositionTypeNormalized;
[button addChild:label];
return button;
}
您可以稍微修改一下以满足您的需求。 希望这会有所帮助。