flash – 检查SoundChannel是否正在播放声音
发布时间:2020-12-15 19:47:08 所属栏目:百科 来源:网络整理
导读:如何可靠地检查SoundChannel是否还在播放声音? 例如, [Embed(source="song.mp3")]var Song: Class;var s: Song = new Song();var ch: SoundChannel = s.play();// how to check if ch is playing? 解决方法 我做了一些研究,我找不到查询任何对象的方法来确
如何可靠地检查SoundChannel是否还在播放声音?
例如, [Embed(source="song.mp3")] var Song: Class; var s: Song = new Song(); var ch: SoundChannel = s.play(); // how to check if ch is playing? 解决方法
我做了一些研究,我找不到查询任何对象的方法来确定是否正在播放声音.你必须编写一个包装类并自己管理它.
package { import flash.events.Event; import flash.media.Sound; import flash.media.SoundChannel; public class SoundPlayer { [Embed(source="song.mp3")] private var Song:Class; private var s:Song; private var ch:SoundChannel; private var isSoundPlaying:Boolean; public function SoundPlayer() { s = new Song(); play(); } public function play():void { if(!isPlaying) { ch = s.play(); ch.addEventListener( Event.SOUND_COMPLETE,handleSoundComplete); isSoundPlaying = true; } } public function stop():void { if(isPlaying) { ch.stop(); isSoundPlaying = false; } } private function handleSoundComplete(ev:Event):void { isSoundPlaying = false; } } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |