| Package | starling.display |
| Class | public class DisplayObjectContainer |
| Inheritance | DisplayObjectContainer DisplayObject EventDispatcher Object |
| Subclasses | Button, Sprite, Stage, TextField |
A container does not a have size in itself. The width and height properties represent the extents of its children. Changing those properties will scale all children accordingly.
As this is an abstract class, you can't instantiate it directly, but have to use a subclass instead. The most lightweight container class is "Sprite".
Adding and removing childrenThe class defines methods that allow you to add or remove children. When you add a child, it will be added at the frontmost position, possibly occluding a child that was added before. You can access the children via an index. The first child will have index 0, the second child index 1, etc.
Adding and removing objects from a container triggers non-bubbling events.Event.ADDED: the object was added to a parent.Event.ADDED_TO_STAGE: the object was added to a parent that is
connected to the stage, thus becoming visible now.Event.REMOVED: the object was removed from a parent.Event.REMOVED_FROM_STAGE: the object was removed from a parent that
is connected to the stage, thus becoming invisible now.ADDED_TO_STAGE event is very helpful, as it allows you to
automatically execute some logic (e.g. start an animation) when an object is rendered the
first time.
See also
| Property | Defined By | ||
|---|---|---|---|
![]() | alpha : Number The opacity of the object. | DisplayObject | |
![]() | bounds : Rectangle [read-only] The bounds of the object relative to the local coordinates of the parent. | DisplayObject | |
![]() | height : Number The height of the object in pixels. | DisplayObject | |
![]() | name : String The name of the display object (default: null). | DisplayObject | |
| numChildren : int [read-only] The number of children of this container. | DisplayObjectContainer | ||
![]() | parent : DisplayObjectContainer [read-only] The display object container that contains this display object. | DisplayObject | |
![]() | pivotX : Number The x coordinate of the object's origin in its own coordinate space (default: 0). | DisplayObject | |
![]() | pivotY : Number The y coordinate of the object's origin in its own coordinate space (default: 0). | DisplayObject | |
![]() | root : DisplayObject [read-only] The topmost object in the display tree the object is part of. | DisplayObject | |
![]() | rotation : Number The rotation of the object in radians. | DisplayObject | |
![]() | scaleX : Number The horizontal scale factor. | DisplayObject | |
![]() | scaleY : Number The vertical scale factor. | DisplayObject | |
![]() | stage : Stage [read-only] The stage the display object is connected to, or null if it is not connected
to a stage. | DisplayObject | |
![]() | touchable : Boolean Indicates if this object (and its children) will receive touch events. | DisplayObject | |
![]() | transformationMatrix : Matrix [read-only] The transformation matrix of the object relative to its parent. | DisplayObject | |
![]() | visible : Boolean The visibility of the object. | DisplayObject | |
![]() | width : Number The width of the object in pixels. | DisplayObject | |
![]() | x : Number The x coordinate of the object relative to the local coordinates of the parent. | DisplayObject | |
![]() | y : Number The y coordinate of the object relative to the local coordinates of the parent. | DisplayObject | |
| Method | Defined By | ||
|---|---|---|---|
addChild(child:DisplayObject):void Adds a child to the container. | DisplayObjectContainer | ||
addChildAt(child:DisplayObject, index:int):void Adds a child to the container at a certain index. | DisplayObjectContainer | ||
![]() | addEventListener(type:String, listener:Function):void Registers an event listener at a certain object. | EventDispatcher | |
broadcastEvent(event:Event):void Dispatches an event on all children (recursively). | DisplayObjectContainer | ||
contains(child:DisplayObject):Boolean Determines if a certain object is a child of the container (recursively). | DisplayObjectContainer | ||
![]() | dispatchEvent(event:Event):void [override] Dispatches an event to all objects that have registered for events of the same type. | DisplayObject | |
dispose():void [override] Disposes the resources of all children. | DisplayObjectContainer | ||
getBounds(targetSpace:DisplayObject):Rectangle [override] Returns a rectangle that completely encloses the object as it appears in another
coordinate system. | DisplayObjectContainer | ||
getChildAt(index:int):DisplayObject Returns a child object at a certain index. | DisplayObjectContainer | ||
getChildByName(name:String):DisplayObject Returns a child object with a certain name (non-recursively). | DisplayObjectContainer | ||
getChildIndex(child:DisplayObject):int Returns the index of a child within the container, or "-1" if it is not found. | DisplayObjectContainer | ||
![]() | getTransformationMatrix(targetSpace:DisplayObject):Matrix Creates a matrix that represents the transformation from the local coordinate system
to another. | DisplayObject | |
![]() | globalToLocal(globalPoint:Point):Point Transforms a point from global (stage) coordinates to the local coordinate system. | DisplayObject | |
![]() | hasEventListener(type:String):Boolean Returns if there are listeners registered for a certain event type. | EventDispatcher | |
hitTest(localPoint:Point, forTouch:Boolean = false):DisplayObject [override] Returns the object that is found topmost beneath a point in local coordinates, or nil if
the test fails. | DisplayObjectContainer | ||
![]() | localToGlobal(localPoint:Point):Point Transforms a point from the local coordinate system to global (stage) coordinates. | DisplayObject | |
removeChild(child:DisplayObject, dispose:Boolean = false):void Removes a child from the container. | DisplayObjectContainer | ||
removeChildAt(index:int, dispose:Boolean = false):void Removes a child at a certain index. | DisplayObjectContainer | ||
removeChildren(beginIndex:int = 0, endIndex:int = -1, dispose:Boolean = false):void Removes a range of children from the container (endIndex included). | DisplayObjectContainer | ||
![]() | removeEventListener(type:String, listener:Function):void Removes an event listener from the object. | EventDispatcher | |
![]() | removeEventListeners(type:String = null):void Removes all event listeners with a certain type, or all of them if type is null. | EventDispatcher | |
![]() | removeFromParent(dispose:Boolean = false):void Removes the object from its parent, if it has one. | DisplayObject | |
render(support:RenderSupport, alpha:Number):void [override] Renders the display object with the help of a support object. | DisplayObjectContainer | ||
setChildIndex(child:DisplayObject, index:int):void Moves a child to a certain index. | DisplayObjectContainer | ||
Swaps the indexes of two children. | DisplayObjectContainer | ||
swapChildrenAt(index1:int, index2:int):void Swaps the indexes of two children. | DisplayObjectContainer | ||
| numChildren | property |
numChildren:int [read-only] The number of children of this container.
public function get numChildren():int| addChild | () | method |
public function addChild(child:DisplayObject):voidAdds a child to the container. It will be at the frontmost position.
Parameters
child:DisplayObject |
| addChildAt | () | method |
public function addChildAt(child:DisplayObject, index:int):voidAdds a child to the container at a certain index.
Parameters
child:DisplayObject | |
index:int |
| broadcastEvent | () | method |
public function broadcastEvent(event:Event):voidDispatches an event on all children (recursively). The event must not bubble.
Parameters
event:Event |
| contains | () | method |
public function contains(child:DisplayObject):BooleanDetermines if a certain object is a child of the container (recursively).
Parameters
child:DisplayObject |
Boolean |
| dispose | () | method |
override public function dispose():voidDisposes the resources of all children.
| getBounds | () | method |
override public function getBounds(targetSpace:DisplayObject):RectangleReturns a rectangle that completely encloses the object as it appears in another coordinate system.
Parameters
targetSpace:DisplayObject |
Rectangle |
| getChildAt | () | method |
public function getChildAt(index:int):DisplayObjectReturns a child object at a certain index.
Parameters
index:int |
DisplayObject |
| getChildByName | () | method |
public function getChildByName(name:String):DisplayObjectReturns a child object with a certain name (non-recursively).
Parameters
name:String |
DisplayObject |
| getChildIndex | () | method |
public function getChildIndex(child:DisplayObject):intReturns the index of a child within the container, or "-1" if it is not found.
Parameters
child:DisplayObject |
int |
| hitTest | () | method |
override public function hitTest(localPoint:Point, forTouch:Boolean = false):DisplayObjectReturns the object that is found topmost beneath a point in local coordinates, or nil if the test fails. If "forTouch" is true, untouchable and invisible objects will cause the test to fail.
Parameters
localPoint:Point | |
forTouch:Boolean (default = false) |
DisplayObject |
| removeChild | () | method |
public function removeChild(child:DisplayObject, dispose:Boolean = false):voidRemoves a child from the container. If the object is not a child, nothing happens. If requested, the child will be disposed right away.
Parameters
child:DisplayObject | |
dispose:Boolean (default = false) |
| removeChildAt | () | method |
public function removeChildAt(index:int, dispose:Boolean = false):voidRemoves a child at a certain index. Children above the child will move down. If requested, the child will be disposed right away.
Parameters
index:int | |
dispose:Boolean (default = false) |
| removeChildren | () | method |
public function removeChildren(beginIndex:int = 0, endIndex:int = -1, dispose:Boolean = false):voidRemoves a range of children from the container (endIndex included). If no arguments are given, all children will be removed.
Parameters
beginIndex:int (default = 0) | |
endIndex:int (default = -1) | |
dispose:Boolean (default = false) |
| render | () | method |
override public function render(support:RenderSupport, alpha:Number):voidRenders the display object with the help of a support object. Never call this method directly, except from within another render method.
Parameters
support:RenderSupport — Provides utility functions for rendering.
| |
alpha:Number — The accumulated alpha value from the object's parent up to the stage. |
| setChildIndex | () | method |
public function setChildIndex(child:DisplayObject, index:int):voidMoves a child to a certain index. Children at and after the replaced position move up.
Parameters
child:DisplayObject | |
index:int |
| swapChildren | () | method |
public function swapChildren(child1:DisplayObject, child2:DisplayObject):voidSwaps the indexes of two children.
Parameters
child1:DisplayObject | |
child2:DisplayObject |
| swapChildrenAt | () | method |
public function swapChildrenAt(index1:int, index2:int):voidSwaps the indexes of two children.
Parameters
index1:int | |
index2:int |