Cocos2d iphone cclayer函数称为error

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

我有两层,叫做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
{ 
  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是否为零。