2012-08-02 55 views
1

我有一個CCScene,它已經擁有我的遊戲圖層,我正在嘗試在該圖層上添加HUD圖層。但HUD圖層並未添加到我的場景中,我可以說因爲我擁有在HUD層上建立一個CCLabel,當我運行我的項目時,我看不到那個標籤。未在我的場景中添加新圖層

下面是我在做什麼:在我gameLayer:

+(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; 
} 

然後在我的HUD層我剛纔說像這樣在其init方法CCLabelTTF:

-(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層中的init方法。

任何想法..?

提前感謝您的時間。

+0

可能重複的[HUD層沒有被添加到我的場景](http://stackoverflow.com/questions/11758056/hud-layer-not-being-added-on-my-scene) – 2012-08-02 13:09:55

回答

2

我猜[Hudclass node]不是調用你的類的init方法,而只是調用CCNode的init方法。您可以通過在該行設置斷點並逐步進入節點方法來驗證此情況。

兩個解決方案:

  • 覆蓋+(ID)節點在HUDclass
  • 創建圖層[[[HUDclass頁頭] INIT]自動釋放]
+0

男人..你是最好的Cocos2d .. !! !謝謝一噸..它的工作..! – Shailesh 2012-08-02 13:19:11

+0

覆蓋+(id)節點,做了訣竅。再次感謝 ..! :) – Shailesh 2012-08-02 13:33:06