你如何在其下面放置一个带有cclabel的ccmenuitem?

时间:2012-05-03 15:47:40

标签: cocos2d-iphone ccmenuitem

在cocos2d-iphone中,我想在菜单按钮项目中使用精灵,我想在其下方放置一个描述按钮的标签。

但是,我不知道该怎么做。

如果我尝试制作更多按钮/标签,然后使用

[menu alignItemsHorizontallyWithPadding:1.5f];

项目的位置错误。

无论如何,这是我的代码;

// Button
CCSprite *panel = [CCSprite spriteWithFile:@"panel.png"];        

// Menu
CCMenu *menu = [CCMenu menuWithItems:nil];


CCLabelBMFont *lblFont = [CCLabelBMFont labelWithString:@"Some text" fntFile:@"arial16.fnt"];

CCMenuItemLabel *mnuLabel = [CCMenuItemLabel itemWithLabel:lblFont];    

CCMenuItemSprite *mnuSprite = [CCMenuItemSprite itemFromNormalSprite:panel selectedSprite:nil disabledSprite:nil target:nil selector:nil];

[menu addChild:mnuSprite];
[menu addChild:mnuLabel];
[menu setPosition:ccp(winSize.width/2, winSize.height/2)];

[self addChild:menu z:1];

1 个答案:

答案 0 :(得分:2)

你确定,你需要标签UNDERNEATH你的精灵吗?如果我理解正确,您可以创建CCMenuItemSprite实例,然后将其作为子项添加到其中。像是:

CCMenuItemSprite *mnuSprite = [CCMenuItemSprite itemFromNormalSprite:panel selectedSprite:nil disabledSprite:nil target:nil selector:nil];
CCLabelBMFont *lblFont = [CCLabelBMFont labelWithString:@"Some text" fntFile:@"arial16.fnt"];

[lblFont setAnchorPoint: ccp(0.f, 0.f)];
[mnuSprite addChild: lblFont];