Cocos2d iphone cclayer函数称为error
我有两层,叫做alayer和blayer,alayer是父母 在alayer.h中有一个函数Cocos2d iphone cclayer函数称为error,cocos2d-iphone,cclayer,ccmenu,ccscene,Cocos2d Iphone,Cclayer,Ccmenu,Ccscene,我有两层,叫做alayer和blayer,alayer是父母 在alayer.h中有一个函数 - (void)playGame; 在alayer.m中,添加blayer - (id)init { if ([super init] == self) { Blayer *bLayer = [[bLayer alloc] initWithParent:self]; [self addChild:bLayer]; } return self; } - (void)playGame
- (void)playGame;
在alayer.m中,添加blayer
- (id)init
{
if ([super init] == self) {
Blayer *bLayer = [[bLayer alloc] initWithParent:self];
[self addChild:bLayer];
}
return self;
}
- (void)playGame
{
CCLOG(@"game start");
}
在布莱尔
-(id) initWithParent:(CCLayer *)parentLayer
{
if ([super init] == self) {
winSize = [[CCDirector sharedDirector] winSize];
CCLabelTTF *startGameLabel = [CCLabelTTF labelWithString:@"Start" fontName:@"Marker Felt" fontSize:12];
startGameLabel.color = ccc3(251, 182, 59);
CCMenuItemFont *startGame = [CCMenuItemFont itemWithLabel:startGameLabel block:^(id sender) {
[self removeFromParentAndCleanup:YES];
Alayer *aLayer = (Alayer *)self.parent;
[aLayer playGame];
}];
CCMenu *menuStart = [CCMenu menuWithItems:startGame, nil];
menuStart.position = ccp(winSize.width / 2, winSize.height / 2);
[self addChild: menuStart];
}
return self;
}
当单击“开始”按钮时,blayer可以从alayer(父级)中删除,但无法调用“playGame”函数,因此您能帮助我解决问题吗?谢谢你说“不能叫”是什么意思?如果存在与之相关的错误消息或编译器警告/错误,请复制并粘贴该消息。PS:惯例是以大写字母开头类名,方法名和变量以小写字母开头,每隔一个字母以大写字母开头(驼峰大小写)。例如:将MyLayer而不是MyLayer分类,变量为“MyLayer*MyLayer”。@LearnCos2D感谢您的回复,“无法调用”表示当我单击开始按钮时,没有响应,日志为“CCLOG(@“game Start”);'无法打印,我已经更改了大小写字母,但仍然不起作用。请设置断点,检查块是否运行,aLayer是否为零。