Как воспроизвести звук из библиотеки в AS3? - PullRequest
7 голосов
/ 24 апреля 2010

В Flash 10 / AS3 я добавил немного звука, и он, кажется, работает нормально, но я думаю, что делаю это неправильно Я импортировал звук в библиотеку, но считаю, что он перезагружает его из папки с swf / sound. Я загружаю их так:

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

Есть ли способ заставить его просто загрузить его из библиотеки?

Ответы [ 2 ]

11 голосов
/ 24 апреля 2010

Вам нужно сделать звук в библиотеке доступным для actionscript. После этого вы можете реализовать звуковой объект как любой другой класс.

Чтобы сделать объект библиотеки доступным для actionScript, щелкните левой кнопкой мыши элемент в библиотеке и выберите «Связывание». Установите флажок рядом с «Экспорт для ActionScript». Затем вам нужно дать объекту имя класса, и, поскольку вы имеете дело со звуком, убедитесь, что базовый класс является объектом Sound.

Допустим, вы назвали свой класс звука "MySound", теперь вы можете получить доступ к этому объекту с помощью ActionScript следующим образом (включая ваш код из вопроса):

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

примечание: если вы хотите дополнительно управлять звуком (остановка, перемотка и т. Д.), Вам необходимо создать объект SoundChannel. (см. документацию ниже)

Документация по звуковым объектам Adobe

1 голос
/ 31 августа 2015

В верхнем ответе удалось получить неверный код.

Вот более упрощенная версия.

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

}

Просто измените имя класса вашего внутреннего звукового файла на mySound.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...