2013-06-24 88 views
0

我有這兩個場景,一個菜單場景和一個主要的遊戲場景。 主要的遊戲場景有兩個singelton層,它是我所有遊戲內容的發展地點。切換場景凍結觸摸

我使用replaceScene方法從遊戲場景切換回菜單場景,但當切換回遊戲場景時,控件或觸摸被凍結。

這裏是遊戲主場景代碼:

#import "BJPlayfieldScene.h" 


@implementation BJPlayfieldScene 


+(id)scene { 
return([ [ self alloc ] init ]); 
} 

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

    //Background Layer 
    [self addChild:[BackgroundLayer sharedBackground] z:0]; 

    //playfiled layer 

    [self addChild:[BJPlayfieldLayer sharedfieldlayer] z:5]; 

} 
return self; 
} 

@end 

,然後將代碼切換回和第四:

[[CCDirector sharedDirector] replaceScene:[CCTransitionFade transitionWithDuration:1.0  scene:[IntroLayer scene]]]; 

[[CCDirector sharedDirector] replaceScene:[CCTransitionFade transitionWithDuration:1.0 scene: 
              [BJPlayfieldScene scene ] ]]; 

任何想法?

多謝

+0

幀速率顯示穩定在30.0左右,所以我懷疑觸摸離開場景後禁用,因爲self.touchEnabled = YES;在我的init方法中,它永遠不會再被調用,因爲它是一個singelton。我試圖從外部啓用它,但沒有運氣。或者問題可能在其他地方一起。 –

回答

1

如果您實施的OnEnter或*方法相似,你必須調用超級實現。不這樣做會導致「輸入丟失」。

+0

謝謝,我對此很陌生,在哪裏可以找到onEnter方法,以及如何實現它。我已經看到了onEnter的某個地方,但不記得它是如何工作的.BYW我有你的書 –

+0

我已經添加了一個onEnter方法,並重新啓用觸摸它,也稱爲超級實現,但沒有運氣 –

+0

好吧,我移動了按鈕和菜單創建代碼從初始化到OnEnter,如果工作!!!!太好了,謝謝 –