¿Cómo se puede hacer referencia a un mapa de bits en el escenario en el código actionscript?

StackOverflow https://stackoverflow.com/questions/43354

  •  09-06-2019
  •  | 
  •  

Pregunta

¿Cómo se puede hacer referencia a un mapa de bits en el escenario en flash con actionscript 3?

Tengo un mapa de bits en el escenario en flash y al final de la película me gustaría intercambiarlo por el siguiente en la secuencia antes de que la película de bucles.en mi biblioteca tengo 3 imágenes, exportar para actionscript, con el nombre de la clase img1/img2/img3.aquí es cómo mis capas en flash se establecen.

layer 5 : mask2:MovieClip
layer 4 : img2:Bitmap
layer 3 : mask1:MovieClip
layer 2 : img1:Bitmap
layer 1 : background:Bitmap

al final de la película me gustaría intercambiar img1 con img2, por lo que la película bucles perfectamente, idealmente de intercambio img2 (capa 4) con img3 y así sucesivamente hasta llegar al final de mis imágenes.

pero no puedo averiguar cómo hacer referencia a las imágenes que ya se han puesto en el escenario (en tiempo de diseño), alguno tiene alguna idea de cómo hacerlo?

El final de la película esperemos que la carga de imágenes de forma dinámica desde el servidor web (tengo el código para este bit) y mostrarlos así como img1/img2/img3.

Cualquier ayuda se agradece.

EDITAR:

@81bronco , He probado esto, pero el nombre de la instancia es de color gris para los gráficos, solo me permite hacerlo con componentes movieclip y botones.Yo casi tengo que trabajar por convertirlos en moveclips, y eliminación de las imágenes en la moveclip a cabo antes de añadir uno nuevo (con algo más simple a lo vanhornRF se sugiere), pero por alguna extraña razón, cuando la máscara de patadas en las imágenes que se borra volver a por la máscara de la animación.

¿Fue útil?

Solución

Para hacer referencia a algo en el escenario, usted necesita dar a la etapa de la instancia de un nombre - no dar el símbolo en la biblioteca de un nombre de clase.

Haga clic en el elemento en el escenario y mirar en el panel de propiedades.Debe haber un cuadro de entrada de texto justo por encima de los cuadros de entrada para el elemento de dimensiones.Introduzca un nombre.

En otra parte de su código, puede referirse a ese elemento en el escenario por su nombre de instancia.

Otros consejos

Debe ser algo como esto:

imageHolder.removeChild( imageIndex )

o

imageHolder.removeChildByName( imageName )

y después de que

imageHolder.addChild( newImage )

Probablemente voy a hacer algo como esto en su clase de documento

for(var i:int=0; i<numChildren; i++){
    trace(getChildAt(i),"This is the child at position "+i);
}

Hago esto porque yo todavía código en el IDE de flash y su depurador es tan doloroso para conseguir trabajo la mayoría de las veces es más fácil simplemente de seguimiento de las variables de salida, así que usted puede utilizar ese bucle for para imprimir el objeto de nombres de los elementos que se encuentran en su etapa, o el uso de un depurador programa para encontrar los objetos así.

Ahora que tiene los niños y en qué índice de que en realidad está en dentro de la etapa, puede hacer referencia a ellos llamando getChildAt(int), puede removeChildAt(int), puede addChildAt(displayObject, int) y swapChildrenAt(int, int).La int en estos argumentos representan la posición de índice que fue devuelto por el seguimiento de la declaración y de la displayObject, obviamente, sería simplemente representar cualquier cosa que quería añadir a la etapa o el padre de DisplayObject.

El uso de los 4 comandos debe ser capaz de libre re-organizar cualquiera de los componentes movieclip tiene en el escenario para que aparezcan a la transición a la perfección.

@81bronco Uno definitivamente debe el nombre de sus activos en el escenario si desea única referencia específicamente a ellos para evitar cualquier confusión si no termina siendo un montón de elementos en el escenario

Hey Re0sless, al quitar los elementos de la etapa tienen ningún detectores de eventos asociados a ellos, cualquier temporizadores o cargadores?Cualquiera de esas cosas puede hacer que un objeto alrededor de palo en flash de la memoria y de no quitar correctamente.También en la parte superior de eliminar el elemento, tal vez intente anular es así?A veces, que ayuda en la limpieza de sus referencias para que pueda ser debidamente destruido.

Por supuesto, también podría ser algo tonto como quitar el elemento en una instancia no quitar el elemento de futuro fotogramas así, pero yo realmente no creo que sea el caso.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top