這裏後不會重置爲場景:AndEngine - 場景變量變更現場
我有以下場景:
- SplashScene
- LoadingScene
- GameModeScene
- PlayModeScene
- GameScene
我有一個SceneController類來管理場景之間的導航。
在SceneController中,我有所有場景的實例。
我正在初始化所有場景實例,並在LoadScene中加載所有場景資源。
當我從GameModeScene改變場景到PlayModeScene - Works完美無瑕。
但是,當我嘗試再次將場景更改爲GameModeScene時,在GameModeScene的第一次運行期間初始化的布爾值和其他變量保持不變,並且不會重置。
注意:變量是私有的每個類的和非靜態
我試過pGameModeSceneto.reset();但它不會工作。
Anyy建議?
下面的是我如何初始化現場insatnces
SceneController.loadSceneResources()
每個類的public void loadSceneResources(SceneType mType){
switch(mType){
case SplashScene:
this.mSplashScene = new SplashScene(this.mActivity);
break;
case LoadingScene:
mLoadingScene = new LoadingScene(mActivity);
break;
case GameModeScene:
mGameModeScene=new GameModeScene(this.mActivity);
break;
case PlayModeScene:
mPlayModeScene=new PlayModeScene(this.mActivity);
break;
case GameScene:
break;
default:
}
}
構造函數加載的資源。
下面是中號getiing當前場景實例
SceneController.getScene() 公共場景getScene(場景類型M型){
switch(mType){
case SplashScene:
this.mCurrentScene = mSplashScene;
break;
case LoadingScene:
this.mCurrentScene = mLoadingScene;
break;
case GameModeScene:
this.mCurrentScene = mGameModeScene;
break;
case PlayModeScene:
this.mCurrentScene = mPlayModeScene;
break;
default:
}
對不起,我應該已經注意到@ jmr499485基本上是說同樣的事情(和我之前說的話)。你應該給他支票。除非我們都誤解了你,否則我們對「變量不重置」問題的回答是「他們爲什麼會這樣?」 – 2013-02-12 01:23:04
Yeahh我終於做了同樣的事情。我明白這是一個java的基礎知識,變量不會重置,直到您重新創建類的實例或手動重置它們;感謝你們倆 – 2013-02-12 18:21:22
這是一個功能,而不是一個錯誤。 :)如果您想授予其中一個綠色的選中標記,那很感激。 – 2013-02-12 21:35:05