2

AS3を介して動的に名前でレイヤーにアクセスしようとしていました。しかし、AS3 API のレイヤーには何もないことがわかりました (または十分に検索していませんでした)。

それが本当なら、IDE でレイヤーに名前を付けることは、コードにとってまったく意味がないのですか?

何が起こるのですか?DisplayObject実行時にインデックス付きの山に変換されますか?

その間に新しい子をスタック (urgh) するために、常に子のインデックス位置を参照する必要がありますか?

これらの名前付きレイヤーがなければ、すべてがまとまりがないように見えます...私が曖昧であることを願っています. :s

4

1 に答える 1

6

簡単な答えは、はい、FLA がコンパイルされるとレイヤー情報が失われるということです。実行時にそれらに関する情報を取得する方法はまったくありません。その点で、あなたができることはあまりありません。

最善の策は、かつてレイヤー上にあったオブジェクトのグループをコンテナー MovieClips に配置することです。次に、これらの MovieClips インスタンスに名前を付けることができます。これは、レイヤー名に簡単に対応できます。

そうでなければ、あなたにできることがたくさんあるとは思えません。残念ながら、レイヤーは完全に Flash IDE 固有の概念であり、基本的にコンパイル時に破棄されます。

于 2012-12-24T19:29:21.773 に答える