2014-03-05 92 views
0

我創建了一個小型應用程序,並且我得到了我的AS文件:如何在Movieclips之間導航?

  • GameScene.as
  • Menu.as
  • Game.as

所有這些擴展影片剪輯,並且GameScene是我用應用程序加載的一個。在GameScene中,我定義並添加了菜單和遊戲,默認情況下游戲不可見。 在GameScene中,我定義了切換到菜單或遊戲的功能(使任一個可見/不可見)。我認爲,因爲GameScene是父母,他們可以調用父母,將它投射到GameScene並訪問方法以開啓可見性:

(parent作爲GameScene).SwitchToGame();

但是這會拋出錯誤,說父母爲空?也許我應該通過活動來做到這一點,但我需要爲一個學校項目做到快速和骯髒。調用擁有Menu和Game來控制可見性的父函數應該足夠了嗎?我正在使用Adobe Flash Builder。

回答

0

你說得對。您可以將父項投給GameScene:GameScene(this.parent).switchToGame()。錯誤意味着您沒有將菜單或遊戲添加到顯示列表中。

addChild(menu); 
addChild(game); 

另外,如果你帶類的操作,你可以通過GameScene到菜單,遊戲的構造函數,所以你將不得不與顯示列表更大的靈活性,不被強迫留在父母的GameScene。

+0

我必須忘記一些東西,因爲我得到的錯誤,當我嘗試打印這個.parent它是'空' – Jason94

+0

如果this.parent'爲null,你沒有添加顯示對象的顯示列表。你可以調試這個過程。爲事件addEventListener(Event.ADDED_TO_STAGE,onAdded)創建事件偵聽器,並在處理器onAdded中放置一些蹤跡。 –

+0

但是,通過添加菜單或遊戲到顯示列表,您的意思是「addChild(menu)」到連接到該項目的GameScene類? – Jason94