2010-04-23 7 views
7

Flash 10/AS3에서 사운드를 추가했는데 문제가없는 것 같지만 잘못하고 있다고 생각합니다. 라이브러리에 사운드를 가져 왔지만 swf/sound가있는 폴더에서 사운드를 다시로드한다고 생각합니다. 나는 다음과 같이 그들을 로딩합니다 :AS3에서 라이브러리의 사운드를 재생하는 방법은 무엇입니까?

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

라이브러리에서로드하는 방법이 있습니까?

답변

11

라이브러리의 사운드를 actionscript에 사용할 수있게해야합니다. 그런 다음 다른 클래스와 마찬가지로 사운드 객체를 구현할 수 있습니다.

라이브러리 개체를 actionscript에 사용할 수있게하려면 라이브러리에서 항목을 마우스 왼쪽 단추로 클릭하고 '링크'를 선택하십시오. 'ActionScript로 내보내기'옆의 확인란을 선택하십시오. 그런 다음 객체에 클래스 이름을 지정해야하며 사운드를 처리하고 있으므로 기본 클래스가 Sound 객체인지 확인하십시오.

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

참고 :

지금과 같은 액션 스크립트를 통해이 개체에 액세스 할 수의 당신은 사운드 클래스 "MySound"라는 말을하자 (당신의 질문에서 코드를 포함) 당신이 더를 제어하려는 경우 사운드 (정지, 재연 등)를 수행하려면 SoundChannel 객체를 만들어야합니다. 상단 대답은 잘못된 코드의 일부를 얻을 수있게되었다

Adobe Sound Object Documentation

+1

감사합니다. 나는 그와 같은 것을 잊어 버린 것 같았습니다. 이미 SoundChannel을 가지고 있습니다. :) – Ullallulloo

1

(아래 설명서를 참조하십시오).

좀 더 단순한 버전입니다.

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

}

그냥 mySound에 내부 사운드 파일 클래스 이름을 변경합니다.

관련 문제