大家好,我无法弄清楚。我想从类(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()
对象。