我有一个有两个孩子的父母,我想彼此沟通。由于某种原因,它无法正常工作。这就是我所拥有的:
父
GameplayLayer *gameplaylayer = [GameplayLayer node]; // 1
[self addChild:gameplaylayer z:2 tag:1];
GameplayLayer2 *gameplaylayer2 = [GameplayLayer2 node]; // 1
[self addChild:gameplaylayer2 z:20 tag:2];
子
·H
#import "GameplayLayer2.h"
@interface GameplayLayer : CCLayer {
GameplayLayer2* game;
}
的.m
game = (GameplayLayer2*)[[self parent] getChildByTag:2];
但是当我尝试在game
中运行某个功能时[game runfun]
,它就不会运行。
答案 0 :(得分:1)
如果这一行...
game = (GameplayLayer2*)[[self parent] getChildByTag:2];
正在GameplayLayer1
的初始化函数中运行,然后它运行得太早,因为到目前为止您还没有设置GameplayLayer2
的实例。
答案 1 :(得分:0)
检入调试器,在此调用之后
game = (GameplayLayer2*)[[self parent] getChildByTag:2];
游戏实例不是nil