Кнопка отключения звука Flash в Actionscript 3.0 не включает звук - PullRequest
0 голосов
/ 29 февраля 2012

Я очень плохо знаком с Actionscript, но я последовал руководству по созданию кнопки отключения звука, которая прекрасно работает, чтобы отключить звук, но не включать его снова. Что не так с моим кодом?

function setMute(vol){
    sTransform.volume = vol; 
    SoundMixer.soundTransform = sTransform;
}

var sTransform:SoundTransform = new SoundTransform(1,0);
var Mute:Boolean = false;
themutebutton.addEventListener(MouseEvent.CLICK,toggleMuteBtn);

function toggleMuteBtn(event:Event) {
    if(Mute === false) {
        Mute = true;
        setMute(0);
    } else {
        Mute = false;
        setMute(1);
    }
}

Ответы [ 3 ]

0 голосов
/ 29 февраля 2012

Вы можете попробовать переписать вашу функцию следующим образом:

function setMute(vol){   
   SoundMixer.soundTransform = new SoundTransform(vol);
}

Я обнаружил, что это работает так в одном из моих счастливых проектов.

0 голосов
/ 12 марта 2012

Спасибо за ответы, проблема была в том, что переменная инициализировалась как false.Я снял = ложь, и это исправило мою проблему.

Для меня как для новичка класс был немного сложным, и ответ от Игоря Миллы работает, но только если я уберу = ложь

0 голосов
/ 29 февраля 2012

Вы должны использовать класс Sound вместо:

public class YourClass extends Sprite  
{

//  declare the member variables
private var yourSound:Sound = new Sound();
private var muted:Boolean = false;

    private function initializationMethod() 
    {
        yourSound.load(new URLRequest("yourSound.mp3"));
        yourSound.addEventListener(IOErrorEvent.IO_ERROR, yourSoundErrorHandler);

        yourSound.play();

        muteButton.addEventListener(MouseEvent.CLICK, muteButtonClickHandler);         
        this.addChild(muteButton);
    }

    private function muteButtonClickHandler(event:MouseEvent):void 
    {
        if ( muted ) 
        {
            muted = false;
            yourSound.play();
            // you might want to change the button text or image here
        }
        else
        {
            muted = true;
            SoundMixer.stopAll();
            // you might want to change the button text or image here
        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...