Iphone 在cocos2d中获取menuitemfont

Iphone 在cocos2d中获取menuitemfont,iphone,objective-c,ios,cocos2d-iphone,Iphone,Objective C,Ios,Cocos2d Iphone,我有一个ccmenuitemfont,它包含在一个ccsprite中。 触摸事件被分配给menuitemfont。。我需要获得ccsprite的引用,其中包含ccmenuitemfont上的menuitemfont单击。。。也就是说,我需要获取父精灵的引用。。如何实施?有什么想法吗?我使用的代码如下 CCSprite*ballSprite=[CCSprite spriteWithFile:imageName]; [ballSprite setTag:randomNumber] CCMenuIte

我有一个ccmenuitemfont,它包含在一个ccsprite中。 触摸事件被分配给menuitemfont。。我需要获得ccsprite的引用,其中包含ccmenuitemfont上的menuitemfont单击。。。也就是说,我需要获取父精灵的引用。。如何实施?有什么想法吗?我使用的代码如下

CCSprite*ballSprite=[CCSprite spriteWithFile:imageName]; [ballSprite setTag:randomNumber]

CCMenuItem *labelButton=[CCMenuItemFont itemFromString:[NSString stringWithFormat:@"%d",randomNumber]target:self selector:@selector(clickedBallLabel :)];
[labelButton setTag:randomNumber];
CCMenu *ball=[CCMenu menuWithItems:labelButton, nil];
[ball setPosition:ccp([ballSprite boundingBox].size.width/2, [ballSprite boundingBox].size.height/2)];
[ballSprite addChild:ball];
[self addChild:ballSprite];
[ballSprite setPosition:randomStartPoint];
id move = [CCMoveTo actionWithDuration:5 position:ccp(randomX, -30)];
[ballSprite runAction:move];

在我看来,在你的程序中有一个逻辑问题,你想你的labelbutton有一个修改对吗?当你触摸它的时候,为什么你需要一个带按钮的家长参考?但是如果必须的话,你需要这样一个精灵表: [[CCSpriteFrameCache sharedSpriteFrameCache]addSpriteFramesWithFile:@“sceneAtlas.plist”]; spriteBatchNode=[CCSpriteBatchNode batchNodeWithFile:@“scene1atlas.png”]

然后您可以将obj添加到batchnode中,然后您可以使用[obj parent]获取父引用


我不确定我是否知道你的意思,当按下按钮时,球精灵应该被更改?如果是这样,你可以直接将球精灵更改为另一个新精灵,当然,更好的方法是精灵应该尽可能多地进入一个批处理节点,否则,如果你的球精灵是一个精灵表,然后使用我之前告诉过你的方法

ya我需要参考资料。。。。单击按钮标签时单击图标。。我需要更改保存按钮标签的精灵的图像。。所以,有没有办法获得sprite的参考资料,或者请帮助我了解其他的实现逻辑