2010-04-23 11 views
7

W Flash 10/AS3, dodałem trochę dźwięku i wygląda na to, że działa dobrze, ale myślę, że robię to źle. Zaimportowałem dźwięk do biblioteki, ale uważam, że przeładowuje go z folderu za pomocą pliku SWF/Sound. Ładuję je w następujący sposób:Jak odtwarzać dźwięk z biblioteki w AS3?

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

Czy istnieje sposób na pobranie go z biblioteki?

Odpowiedz

11

Musisz uczynić dźwięk w bibliotece dostępnym do actionscript. Następnie możesz zaimplementować obiekt dźwiękowy tak, jak każdą inną klasę.

Aby udostępnić obiekt biblioteki dla actionscript, kliknij lewym przyciskiem element w bibliotece i wybierz "Linkage". Zaznacz pole obok "Eksportuj do ActionScript". Będziesz musiał nadać obiektowi nazwę klasy, a ponieważ masz do czynienia z dźwiękiem, upewnij się, że klasa podstawowa jest obiektem Sound.

Powiedzmy, nazwany klasa dźwięku „mySound”, można uzyskać dostęp do tego obiektu poprzez actionscript jak ten (wprowadzając kod z pytania):

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

uwaga: jeśli chcesz dalej kontrolować dźwięk (zatrzymaj, przewiń, itp.), musisz utworzyć obiekt SoundChannel. (Patrz dokumentacja poniżej)

Adobe Sound Object Documentation

+1

Dzięki, pomyślałem, że mogłem zapomnieć coś takiego. Mam już SoundChannel i takie tam. :) – Ullallulloo

1

Górny odpowiedź udało się uzyskać pewne kodu niewłaściwego.

Oto bardziej uproszczona wersja.

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

}

Wystarczy zmienić plik dźwiękowy swoją wewnętrzną nazwę klasy do mySound.

Powiązane problemy