2012-08-02 5 views
1

이미 내 gameLayer를 보유하고있는 CCScene이 있는데 그 레이어에 HUD 레이어를 추가하려고합니다.하지만 HUD 레이어가 내 장면에 추가되지 않고 있습니다. HUD 레이어에 CCLabel을 설정하고 프로젝트를 실행할 때 해당 레이블을 볼 수 없습니다. 여기 내 레이어에 새 레이어가 추가되지 않았습니다.

내가 뭐하는 거지입니다 : 내 gameLayer에서 :

-(id)init { 

    if ((self = [super init])) { 

    CCLabelTTF * label = [CCLabelTTF labelWithString:@"IN WEAPON CLASS" fontName:@"Arial" fontSize:15]; 
    label.position = ccp(240,160); 
    [self addChild:label]; 

    } 

    return self; 
} 

하지만 지금 내 HUD 층에서 다음

+(id) scene 
{ 

    CCScene *scene = [CCScene node]; 

    GameScreen *layer = [GameScreen node]; 
    [scene addChild: layer]; 

    HUDclass * otherLayer = [HUDclass node]; 
    [scene addChild:otherLayer]; 

    layer.HC = otherLayer;// HC is reference to my HUD layer in @Interface of gameLayer 
    return scene; 
} 

그리고 난 그냥 이런 init 메소드에 CCLabelTTF을 추가 한 나는 그 레이블을 보지 못한다. 내 프로젝트를 수행한다. 내가 여기서 뭘 잘못하고 있니?.

HUD 계층의 init 메소드가 호출되고 있지 않습니다.

모든 아이디어 ..?

미리 감사드립니다.

+0

가능한 중복의 [HUD 층 내 장면에 추가되지 않는] (http://stackoverflow.com/questions/11758056/hud-layer-not-being-added-on-my-scene) –

답변

2

[Hudclass node]가 클래스의 init 메소드를 호출하지 않고 CCNode init 메소드 만 호출하고 있다고 생각합니다. 해당 줄에 중단 점을 설정하고 노드 방법으로 이동하여이를 확인할 수 있습니다.

두 솔루션 :

  • 재정 + (ID)
  • 가와 레이어 만들고, HUDclass에서 노드 [[[HUDclass ALLOC]을 초기화] 오토 릴리즈]
+0

남자 .. 당신은 Cocos2d ..에서 최고입니다! ! 고마워요. .. 일 했어 ..! – Shailesh

+0

+ (id) 노드를 무시하고 트릭을 수행했습니다. 다시 한번 감사드립니다 ..! :) – Shailesh

관련 문제