イナヅマTVログ

ActionScript, addChildAtで指定できるインデックス

| 0件のコメント

表示オブジェクト(SpriteやMovieClipなどなど)をDisplayObjectContainerへインデックスを指定して追加する関数addChildAtのメモ。

DisplayObjectContainer上に存在するインデックスかインデックス+1を指定しないと、エラーになります。

RangeError: Error #2006: 指定したインデックスが境界外です。

リファレンスを見てもこのことは明確に書かれていません。(見つけられなかったかも)
http://help.adobe.com/ja_JP/Flash/CS5/AS3LR/flash/display/DisplayObjectContainer.html?allClasses=1#addChildAt()

絶対上書きされないようにと、インデックスを9999などにすることはでき無いことになります。
表示オブジェクトの追加はaddChildで行い、重なり順をコントロールする時はaddChildAtを使うような自分ルールがいるのかもしれません。

DisplayObjectContainerは表示オブジェクト(Child)をVectorのように飛びインデックスを許さないように管理してるのでしょう。
その方がメモリにも優しいし。
理由は理解できます。

Google先生に聞いたらたくさんヒットしそうなお話でした。

コメントを残す

必須欄は * がついています


このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください