Esistono diversi modi per incorporare le risorse audio in un'applicazione Flex, ad esempio è possibile:
-
Usare il tag per metadati
[Embed]
in uno script
-
Usare la direttiva
@Embed
in MXML per assegnare una risorsa incorporata come proprietà di un componente quale Button o SoundEffect.
-
Usare la direttiva
@Embed
in un file CSS
In questa sezione è descritta la prima opzione: come incorporare l'audio nel codice ActionScript di un'applicazione Flex, usando il tag per metadati
[Embed]
.
Per incorporare una risorsa nel codice ActionScript, utilizzate il tag per metadati
[Embed]
.
Inserite il file audio nella cartella di origine principale o in un'altra cartella del percorso di compilazione del progetto. Quando rileva il tag per metadati Embed, il compilatore di Adobe crea automaticamente la classe della risorsa incorporata. Potete accedere alla classe usando una variabile di tipo dati Class dichiarata subito dopo il tag per metadati
[Embed]
.
Il codice seguente consente di incorporare il suono smallSound.mp3 e usa la variabile
soundClass
per memorizzare un riferimento alla classe della risorsa incorporata associata a tale suono. Nel codice viene poi creata un'istanza della classe della risorsa incorporata, che viene inserita come istanza della classe Sound e quindi viene chiamato il metodo
play()
per quella istanza:
package
{
import flash.display.Sprite;
import flash.media.Sound;
import flash.media.SoundChannel;
public class EmbeddedSoundExample extends Sprite
{
[Embed(source="smallSound.mp3")]
public var soundClass:Class;
public function EmbeddedSoundExample()
{
var smallSound:Sound = new soundClass() as Sound;
smallSound.play();
}
}
}
Per usare il suono incorporato per impostare una proprietà di un componente Flex, il suono deve essere inserito come un'istanza della classe mx.core.SoundAsset invece che come un'istanza della classe Sound. Per un esempio di questo genere che usi la classe SoundAsset, vedete “Classi di risorse incorporate” in Apprendimento di ActionScript 3.0.