0

我有一个有两个孩子的父母,我想彼此交流。由于某种原因,它不起作用。这是我所拥有的:

家长

    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]不会运行。

4

2 回答 2

1

如果这条线...

game = (GameplayLayer2*)[[self parent] getChildByTag:2];

GameplayLayer1的 init 函数中运行,那么它运行得太早了,因为那时你甚至还没有设置你的实例GameplayLayer2

于 2012-06-06T15:31:55.167 回答
0

检查调试器,在此调用之后

game = (GameplayLayer2*)[[self parent] getChildByTag:2];

游戏实例不是nil

于 2012-06-06T11:52:02.127 回答