ActionScript 3
Trabajando con Timeline
Buscar..
Hacer referencia a la línea de tiempo principal o la clase de documento desde otros MovieClips
En la línea de tiempo de cualquier DisplayObject
que se adjunta como descendiente del árbol de visualización, puede utilizar la propiedad root
. Esta propiedad apunta a la línea de tiempo principal en el caso de que no haya una clase de documento personalizada, o la clase de documento si define una.
Debido a que la root
se escribe DisplayObject
, el compilador no le permitirá acceder a métodos personalizados o propiedades definidas en la línea de tiempo principal o dentro de su clase de documento como:
root.myCustomProperty = 10;
root.myCustomMethod();
Para solucionar esto, puede escribir la root
de su clase de documento en el caso de que tenga una clase de documento:
(root as MyDocumentClass).myCustomMethod();
O MovieClip
en el caso de no clase de documento:
(root as MovieClip).myCustomMethod();
La razón por la que el MovieClip
de MovieClip
funciona aquí es porque MovieClip
es dynamic
. Esto significa que el compilador permite que las propiedades y el método de tiempo de ejecución se declaren en él, evitando errores de tiempo de compilación al intentar acceder a propiedades o métodos que no están definidos explícitamente en MovieClip
. La desventaja de esto es que pierde toda la seguridad del tipo de tiempo de compilación. Es mucho mejor declarar una clase de documento y convertir a eso.