2010-04-23 30 views
7

En Flash 10/AS3, agregué un sonido y parece estar funcionando bien, pero creo que lo estoy haciendo mal. Importé el sonido en la biblioteca, pero creo que lo está recargando desde la carpeta con el swf/sonido. Los estoy cargando de este modo:¿Cómo se reproduce el sonido de la biblioteca en AS3?

var request1:URLRequest = new URLRequest("CLICK8C.mp3"); 
clickSound = new Sound(); 
clickSound.addEventListener(Event.COMPLETE, completeHandler); 
clickSound.load(request1); 

¿Hay una manera de conseguir que se acaba de cargar de la biblioteca?

Respuesta

11

Debe activar el sonido en la biblioteca para actionscript. Después de eso, puede implementar el objeto de sonido como cualquier otra clase.

Para hacer que un objeto de biblioteca esté disponible para actionscript, haga clic con el botón izquierdo en el elemento de la biblioteca y seleccione 'Vinculación'. Marque la casilla junto a 'Exportar para ActionScript'. Deberá darle al objeto un nombre de clase y dado que se trata de un sonido, asegúrese de que la clase base sea un objeto Sound.

Digamos que usted designó a su clase de sonido "MySound", ahora se puede acceder a este objeto a través de ActionScript como esto (que incorpora el código de la pregunta):

var mysound:MySound = new MySound(); 
mysound.addEventListener(Event.COMPLETE, completeHandler); 
mysound.play(); 

nota: si usted quiere controlar aún más la sonido (stop, rew, etc.), tendrá que crear un objeto SoundChannel. (Ver documentación a continuación)

Adobe Sound Object Documentation

+1

Gracias, pensé que podría haber olvidado algo así. Ya tengo el SoundChannel y esas cosas. :) – Ullallulloo

1

La respuesta más común ha conseguido que una parte del código incorrecto.

Aquí hay una versión más simplista.

var mysound:Sound = new (mySound); 
mysound.play(); 

}

Sólo cambia el nombre de la clase de archivos de sonido interno a mySound.

Cuestiones relacionadas