問題が解決しました。コメントをご覧ください。評判ポイントのため、私は自分の質問に答えることができません。
シンプルなフラッシュゲームを開発しようとしています。シンボルと、スプラッシュ (ゲームのイントロ画面を表す) と呼ばれるこのシンボルにリンクされた AS3 クラスと、StartButton シンボルがあります。「button_start」のインスタンス名を指定して、Flash IDE を使用してスプラッシュ シンボルに配置された StartButton シンボル。
Splash.as で、StartButton の ADDED_TO_STAGE イベント ハンドラにアクセスしようとしていますが、null ポインタ例外が発生しました。コードは次のとおりです。
public function Splash() {
trace("splash const");
addEventListener(Event.ADDED_TO_STAGE, ats);
super();
}
public function ats(e:Event) {
trace("splash ats");
var i:int = 0;
for (i=0;i<numChildren;i++) {
if (getChildAt(i).name.search("button")) {
trace("bulundu");
buton = getChildAt(i) as MovieClip;
buton.addEventListener(Event.ADDED_TO_STAGE, butonats);
}
}
}
function butonats(e:Event) {
trace("buton ats");
}
結果:
splash const
splash ats
bulundu
TypeError: Error #1009: Boş nesne başvuru özelliğine veya yöntemine erişilemiyor.
at Splash/ats()
すべての子の準備が整ったときに ADDED_TO_STAGE が実行されませんか? どこが間違っているのか理解できませんでした。