Chap07 表示オブジェクトと表示オブジェクトコンテナ: 2009年9月アーカイブ

 ActionScript 3.0 言語およびコンポーネントリファレンスでLoaderクラスの説明を見ると継承には次のように書いてあります。

継承:Loader→DisplayObjectContainer→InteractiveObject   →DisplayObject→EventDispatcher→Object

 これを見ると確かにLoaderクラスはDisplayObjectContainerクラスを継承しているので、MovieClipやSpriteなどと同じようにaddChild()を使って入れ子の表示オブジェクトを追加できるはずです。しかし実際にはLoaderが表示できるのは読み取り専用のcontantプロパティで参照できる表示オブジェクトだけです。
 その理由はコンポーネントリファレンスの説明の続きに書いてあります。そこには次のように書いてあります。

Loaderクラスの説明

Loader クラスは、継承する次のメソッドをオーバーライドします。これは、Loader オブジェクトが持つことができるのは 1 つの子表示オブジェクト、つまり読み込むオブジェクトに限られているためです。次のメソッドを呼び出すと例外がスローされます。メソッドは、addChild()、addChildAt()、removeChild()、removeChildAt() および setChildIndex() です。読み込まれた表示オブジェクトを削除するには、親の DisplayObjectContainer 子配列から Loader オブジェクトを削除する必要があります。

 p.225の表示リストの図でLoaderを二重枠にしていない理由はそういうわけでした。

fig07-02-06.jpg

まったく新しいAS3の世界!
694a.jpg
Adobe Flash CS4
詳細!ActionScript3.0入門ノート[完全改訂版](CD-ROM付)

楽しいActionScript。
新たなる1歩へと踏み出しましょう。
■内容は?→ 目次を見る
■評判は?→ 書評を読む
この本を書いたわけ

このアーカイブについて

このページには、2009年9月以降に書かれたブログ記事のうちChap07 表示オブジェクトと表示オブジェクトコンテナカテゴリに属しているものが含まれています。

前のアーカイブはChap07 表示オブジェクトと表示オブジェクトコンテナ: 2009年7月です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

あわせて読みたいブログパーツ