3

コーディングと AS3 は初めてです。AS3 を使用してステージに物を追加する方法について読んでいて、addChild メソッドについて学びました。続きを読むと、いろいろな使い方があることがわかりました。また、いくつかの方法は他の方法よりも優れていること、およびいくつかの方法はまったく良くなく、避けたほうがよいことも読みました.

しかし、私はそれらの情報源を信用していません。コーディングの初心者として、StackOverflow に助けを求めるようになりました。addChild の重いプロジェクトを開始しようとしていますが、適切な実装で開始したいと考えています。私はあなたを信頼しています。

ステージに物を追加したいだけですが、ステージに直接追加するのは良くないことを読みました(ただし、それ以上の議論はありません)。

stage.addChild()
this.addChild()
addChild()

他の方法はありますか?どちらを使用する必要がありますか?

御時間ありがとうございます。:)

4

1 に答える 1

3

表示リスト階層内のすべての表示オブジェクトの最上位コンテナとしてStage、ランタイムにロードされる SWF ファイルの数に関係なく、1 つだけ存在します。そのため、通常、オブジェクトをステージに直接追加することは絶対に避けてください。ステージに含める必要がある唯一のオブジェクトは、ルート オブジェクトです。

通常、次のものは使用しないでください。stage.addChild()

表示リストへの の追加はDisplayObject、 のスコープ内で実行する必要がありますDisplayObjectContainer

各 SWF ファイルには、表示オブジェクトを拡張する SWF ファイルのメイン クラスと呼ばれる ActionScript クラスが関連付けられています。このクラスまたは階層内の任意の子から、 を呼び出すことができますaddChild()

以下は同等であり、現在の表示オブジェクト コンテナーのスコープ内に子を追加します。

this.addChild()
addChild()

キーワード明示はthisスコープを定義します。ただし、通常、省略した場合は暗黙的です。

addChild() によって追加された表示オブジェクトは、他のすべての子の前 (上) に追加されますが、子を特定のインデックス位置に追加するには、addChildAt()メソッドを使用します。

参考文献:

于 2012-10-27T04:51:11.720 に答える