大家好,我无法弄清楚。我想从类(class)中删除一个声音。因此,我有一个开始屏幕,当您按“玩游戏”时,它将带您进入游戏,但是开始屏幕上的音乐一直在播放。香港专业教育学院试图混音器删除所有有效的声音,但它会删除游戏中的所有声音,甚至是主游戏音乐。所以我只是删除像这样在类中添加的单个声音:

public class mcStartGameScreen extends MovieClip
{
    private var sndmainSong:Sound;
    public var mcStart:MovieClip;

    public function mcStartGameScreen()
    {
        mcStart.buttonMode = true;
        mcStart.addEventListener(TouchEvent.TOUCH_TAP, startOnTouch, false, 0, true)
        //To completely end game when back button pushed on android
        NativeApplication.nativeApplication.addEventListener( KeyboardEvent.KEY_DOWN, handleKeyDown, false, 0, true);



        //create sound object from main song in library
        sndmainSong = new DST10Class();
        sndmainSong.play();
    }

现在,我想通过mcStart事件监听器函数删除声音:
private function startOnTouch(e:TouchEvent):void
    {
        dispatchEvent(new Event("START_GAME"));


             //Tried null but didnt work either
           //DST10Class = null;

    }

那么他们能完成这个简单的方法吗?任何帮助将不胜感激,谢谢!

最佳答案

获取播放声音的处理程序,然后在需要停止播放时调用stop()

var mainChannel:SoundChannel;
sndmainSong = new DST10Class();
mainChannel=sndmainSong.play();

然后,要停止播放,请调用mainChannel.stop(),然后声音将停止。要再次播放它,您需要通过SoundChannel创建另一个sndmainSong.play()对象。

10-04 12:41
查看更多