Как отключить все гибкое приложение? - PullRequest
3 голосов
/ 05 августа 2009

Я играю несколько видеопотоков в моем приложении Flex. Плюс есть звуки пользовательского интерфейса приложения. Есть ли возможность отключить все приложение или я должен отключить каждый из потенциальных источников звука?

Ответы [ 3 ]

2 голосов
/ 07 августа 2009

Вы пробовали

SoundMixer.soundTransform = new SoundTransform(0, 0);
1 голос
/ 09 августа 2009

Возможно, вам придется заново реализовать ваше приложение, чтобы централизовать управление аудиокомпонентами в вашем приложении. Существует шаблон проектирования, называемый Inversion of Control, который может быть полезен для этой проблемы.

http://en.wikipedia.org/wiki/Inversion_of_control

В частности, в Flex вы должны искать шаблон локатора модели в Cairngorm.

http://www.adobe.com/devnet/flex/articles/cairngorm_pt2_06.html

Вы можете использовать это для хранения всех различных уровней звука для вашего приложения в одном месте. И вы можете добавить метод с именем muteAll (), который будет входить и устанавливать все уровни на 0. Каждый раз, когда вы создаете новый аудиокомпонент в приложении, обязательно добавьте ссылку на его уровень громкости в локатор модели. Привязать уровень громкости звука к значению, установленному в локаторе модели. Затем в другом месте приложения вы можете изменить значение в локаторе модели, и благодаря привязке аудиокомпонента, который вы создадите, он будет обновлен.

Это также может быть полезно.

http://livedocs.adobe.com/flex/3/html/help.html?content=Working_with_Sound_23.html#160274

1 голос
/ 05 августа 2009

Я почти уверен, что нет способа сделать это с помощью ActionScript из коробки. Вам нужно иметь некоторый класс менеджера, который отслеживает все звуки (Sound, SoundChannel, SoundTransform и т. Д. И ваши видеопотоки) в вашем приложении и который имеет логику для отключения звука.

Если вы можете заставить своих пользователей использовать Firefox, есть плагин для отключения файлов SWF. Mute Flash - https://addons.mozilla.org/en-US/firefox/addon/5453

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