私は2つのシーンを持っています。シーン1には、addChild(nameObject);
を使って子を自動的に追加するスクリプトがあります。ボタンもあり、次のシーンに移動します。子供がいるか確認してください
シーン2からシーン1に戻ると、コードによって別のオブジェクトが生成されます。子どもがステージに既に存在するかどうかを確認するAS3スクリプトを作成するにはどうすればよいですか?あなたはおそらくDisplayObjectContainer
のcontains()
方法を探している
私は2つのシーンを持っています。シーン1には、addChild(nameObject);
を使って子を自動的に追加するスクリプトがあります。ボタンもあり、次のシーンに移動します。子供がいるか確認してください
シーン2からシーン1に戻ると、コードによって別のオブジェクトが生成されます。子どもがステージに既に存在するかどうかを確認するAS3スクリプトを作成するにはどうすればよいですか?あなたはおそらくDisplayObjectContainer
のcontains()
方法を探している
:
は、指定された表示オブジェクトが
DisplayObjectContainer
インスタンスまたはインスタンス自体の子であるかどうかを決定します。検索 には、このDisplayObjectContainer
インスタンスを含む表示リスト全体が含まれます。孫、曾孫などはそれぞれ返品true
です。
if (!contains(nameObject)) {
// the object is not a child of the container
addChild(nameObject);
}
これは良い回答ですが、私は(潜在的な親はこれは、if(nameObject.parent!= this) 'を実行する方が、すべての子を介して再帰的な検索をしない方が効率的であるということです。 – BadFeelingAboutThis
@BadFeelingAboutThisそれは動作しません、オブジェクトはステージに追加し続けます – Jack
'contains(nameObject)'? http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/display/DisplayObjectContainer.html#contains() – 3vilguy