Sprite, MovieClipを継承したクラスでstageがnullになりアクセスできない。
Flashコンパイル時に以下のエラーが。
TypeError: Error #1009: null のオブジェクト参照のプロパティまたはメソッドにアクセスすることはできません。
ステージにインスタンスを追加したことを確認した後で参照しないといけない様子。
package { import flash.display.MovieClip; import flash.events.Event; public class SomeClass extends MovieClip { public function SomeClass(){ super(); if (stage) init(null); else addEventListener(Event.ADDED_TO_STAGE, init); } private function init(evt:Event) : void { if (evt != null) removeEventListener(Event.ADDED_TO_STAGE, init); trace (stage.stageWidth); } } } |
なるほどねって感じだったりするけど、Flashヘルプのstageが使われているサンプルスクリプトもエラーが出てちょっとハマった。
ピンバック: ActionScript3 / QuickBox2DのcreateStageWalls()でエラー — COMMUNICATION HIHYO
ピンバック: Actionscript 3.0, 初心者がおかしがちな6つの間違い | イナヅマtvログ