包 | mx.core |
接口 | public interface IChildList |
实现器 | SystemManager, UIComponent |
例如,请考虑 Container 类。此类将覆盖 DisplayObjectContainer API(如 numChildren
和 getChildAt()
方法)以只访问“内容”子项,这些子项指您放置在其中的控件和其它容器。但是,Container 还可以包含框架自动创建的其它子项,如背景或边框外观以及滚动条。所以,Container 公开了 IChildList 类型的 rawChildren
属性,允许您访问其所有子项,而不只是内容子项。
再比如,SystemManager 类是一个 DisplayObjectContainer,其子项分成了多个层:底层为 Application 等常规子项,然后向上依次为弹出子项、工具提示,最上层为光标。SystemManager 具有名为 popUpChildren
、toolTipChildren
和 cursorChildren
的属性(您可以使用它们来访问这些层),并且每个属性都是 IChildList 类型。因此,您可以使用 systemManager.popUpChildren.numChildren
属性计算弹出子项的数量,使用 systemManager.toolTipChildren.addChild()
方法将其它 DisplayObject 插入到工具提示层,等等。
另请参见
属性 | 定义方 | ||
---|---|---|---|
numChildren : int [只读 (read-only)] 此子级列表中的子项数。 | IChildList |
方法 | 定义方 | ||
---|---|---|---|
在此子项列表的末尾添加一个子 DisplayObject。 | IChildList | ||
在此子级列表的指定索引处添加子 DisplayObject。 | IChildList | ||
确定 DisplayObject 是否在此子级列表中,或是否为此子级列表中的子项的后代。 | IChildList | ||
获取此子级列表中指定索引处的子 DisplayObject。 | IChildList | ||
获取此子级列表中具有指定名称的子 DisplayObject。 | IChildList | ||
获取此子级列表中特定子项的索引。 | IChildList | ||
返回位于子级列表中指定点下方的 DisplayObject 的数组。 | IChildList | ||
从此子级列表中删除指定的子 DisplayObject。 | IChildList | ||
从此子级列表中删除指定索引处的子 DisplayObject。 | IChildList | ||
更改此子级列表中特定子项的索引。 | IChildList |
numChildren | 属性 |
addChild | () | 方法 |
public function addChild(child:DisplayObject):DisplayObject
在此子项列表的末尾添加一个子 DisplayObject。
调用 childList.addChild(child)
与调用 childList.addChild(child, childList.numChildren)
的效果相同,添加新子项后,新子项的索引为 (child.numChildren - 1)
参数
child:DisplayObject — 要添加为子项的 DisplayObject。 |
DisplayObject — 已添加的子项;它与传入的参数相同。 |
addChildAt | () | 方法 |
public function addChildAt(child:DisplayObject, index:int):DisplayObject
在此子级列表的指定索引处添加子 DisplayObject。索引 0 代表 DisplayList 的开始位置,而索引 numChildren
代表 DisplayList 的结束位置。
将子项添加到子级列表末尾之外的任何位置都会增加以前位于该索引或更高索引处的子项的索引。
参数
child:DisplayObject — 要添加为子项的 DisplayObject。 | |
index:int — 要在其中添加子项的索引。 |
DisplayObject —
已添加的子项;它与传入的 child 参数相同。
|
contains | () | 方法 |
public function contains(child:DisplayObject):Boolean
确定 DisplayObject 是否在此子级列表中,或是否为此子级列表中的子项的后代。
参数
child:DisplayObject — 要测试的 DisplayObject。 |
Boolean —
如果 DisplayObject 在此子级列表中,或者是此子级列表中子项的后代,则返回 true ,否则返回 false 。
|
getChildAt | () | 方法 |
public function getChildAt(index:int):DisplayObject
获取此子级列表中指定索引处的子 DisplayObject。
参数
index:int —
从 0 到 (numChildren - 1) 的整数,指定此子级列表中子项的索引。
|
DisplayObject — 位于指定索引位置处的子项。 |
getChildByName | () | 方法 |
public function getChildByName(name:String):DisplayObject
获取此子级列表中具有指定名称的子 DisplayObject。
参数
name:String — 要返回的子项的名称。 |
DisplayObject — 具有指定名称的子项。 |
getChildIndex | () | 方法 |
public function getChildIndex(child:DisplayObject):int
获取此子级列表中特定子项的索引。
子级列表中第一个子项的索引为 0,第二个子项的索引为 1,最后一个子项的索引为 (numChildren - 1)
。
如果 getChildIndex(myChild)
返回 5,则 myView.getChildAt(5)
返回 myChild
。
如果通过调用 addChild()
方法添加子项,则新子项的索引等于现有子项的最大索引加 1。
您可以使用 addChildAt()
方法在指定索引处插入子项。在这种情况下,先前位于该索引或更高索引处的子项的索引都将增加 1,以便所有子项的索引范围为从 0 到 (numChildren - 1)
。
如果通过调用 removeChild()
或 removeChildAt()
方法删除子项,则位于更高索引处的子项的索引将减小 1,以便所有子项的索引范围为从 0 到 (numChildren - 1)
。
如果通过调用 setChildIndex()
方法更改子项的索引,则位于旧索引和新索引之间(包括两者)的子项将调整其索引,以便所有子项的索引范围为从 0 到 (numChildren - 1)
。
参数
child:DisplayObject — 要获取其索引的子项。 |
int —
子项的索引,该索引是 0 和 (numChildren - 1) 之间的一个整数。
|
getObjectsUnderPoint | () | 方法 |
public function getObjectsUnderPoint(point:Point):Array
返回位于子级列表中指定点下方的 DisplayObject 的数组。
参数
point:Point — 要查看其下方内容的点。 |
Array — 位于指定点下方且属于此 Container 子项的对象的数组。 |
removeChild | () | 方法 |
public function removeChild(child:DisplayObject):DisplayObject
从此子级列表中删除指定的子 DisplayObject。
删除子级列表末尾之外的任意位置的子项都会减小更高索引处的子项的索引。
已删除子项的父项将设置为 null,并且如果没有对该子项的任何其它引用,则将其作为垃圾回收。
参数
child:DisplayObject — 要删除的 DisplayObject。 |
DisplayObject — 被删除的子项;它与传入的参数相同。 |
removeChildAt | () | 方法 |
public function removeChildAt(index:int):DisplayObject
从此子级列表中删除指定索引处的子 DisplayObject。
删除子级列表末尾之外的任意位置的子项都会减小更高索引处的子项的索引。
已删除子项的父项将设置为 null,并且如果没有对该子项的任何其它引用,则将其作为垃圾回收。
参数
index:int — 要删除的 DisplayObject 的子索引。 |
DisplayObject — 被删除的子项。 |
setChildIndex | () | 方法 |
public function setChildIndex(child:DisplayObject, newIndex:int):void
更改此子级列表中特定子项的索引。请参阅 getChildIndex()
方法了解子项索引的说明。
参数
child:DisplayObject — 要设置其索引的子项。 | |
newIndex:int —
指定子项的新索引。新索引必须是零和 (numChildren - 1) 之间的一个整数。
|