Unidad 18. Navegación - ActionScript (X)

18.7. Contenedores y listas de visualización

Con respecto a los elementos que vemos en nuestra película con ActionScript 3, tenemos que tener claros un par de conceptos:

  • Los objetos que vemos son llamados objetos visibles o de visualización, y todos pertenecen a la calse DisplayObject o a una subclase heredada de esta. Siempre han de estar dentro de un contenedor para que se vean.
  • Los objetos están agrupados dentro de un contenedor, que hace de elemento padre. A su vez, dentro de un contenedor podemos tener otros contenedores con sus respectivos elementos. Los contenedores pertenecen a la clase DisplayObjectContainer, y aunque pueda parecer lioso, a su vez un contenedor es un objeto de visualización, y se puede tratar como tal.
  • La lista de visualización es cómo están ordenados los objetos dentro del contenedor, y establece el orden de apilamiento de los objetos.

 

Los contenedores:

En nuestra película podemos tener cuatro tipos de contenedores:

  • La escena (stage). Es el contenedor general de nuestra película. Todo lo que se ve, está dentro de la escena.
  • Loader. Nos permite cargar un archivo externo en él. Lo veremos en el siguiente apartado.
  • MovieClip. Aunque normalmente no lo tratamos como tal, un MovieClip contiene un archivo SWF con una línea de tiempo propia. Por ejemplo, dentro de él podemos acceder a los distintos símbolos que lo forman.
  • Sprite. Es como una carpeta, a la que podemos ir añadiendo y quitando objetos. Podemos crear tantos sprites como queramos.

El que más utilizaremos como contenedor será el Sprite, aunque en muchos casos lo hagamos directamente sobre la escena.

Declararamos un Sprite como cualquier objeto:

var miContenedor:Sprite = new Sprite;

Ahora tenemos un contenedor, pero vacío. Podemos añdirle elementos que pasaran a ser elementos hijos del contenedor. Para ello podemos utilizar uno de los métodos de los contenedores:

miContenedor.addChild(miObjeto1);

miContenedor.addChild(miObjeto2);

Ahora tenemos el contenedor con dos objetos. Pero aún no se ven, porque no hemos añadido el contenedor al elemento principal, a la escena. Vamos a hacerlo:

addChild(miContenedor);

Ahora ya vemos el contenedor. Bueno, realmente no vemos el contenedor, vemos los elementos de visualización que contiene.

Nuestro contenedor tiene una lista de visualización con dos elementos.

 

Pág. 18.10

Atrás  Inicio  Adelante