類文件中的stage初始化問題

我在寫 Class文件的時候總會碰到 stage 的初始化問題,只是用下面的方法可以解決初始化的問題。

原因是這樣的 :

你在類用到 stage, root 這樣的顯示列表中的對象時,你要確定你的class的實例已經位於顯示列表中了,也就是實際上我們在 new myClass 的時候只是一個實例化,還沒有addChild進去,所以在類中用到的 stageWidth 以及 stageHeight 時都要確認 stage != null。

  1. package {
  2.     public class cloud extends MovieClip {
  3.         
  4.         public function cloud(xml):void {
  5.             addEventListener(Event.ENTER_FRAME,init);
  6.         }
  7.         function init(event:Event):void {
  8.             if (stage==null) {
  9.                 return;
  10.             }
  11.             removeEventListener(Event.ENTER_FRAME,init);   
  12.             stage.addEventListener(Event.RESIZE,handleStage);
  13.         }
  14.         function handleStage(event:Event):void {
  15.         }
  16.         
  17.     }
  18. }

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章