永发信息网

as3.0 当跳到其他帧的时候关闭当前帧的声音

答案:1  悬赏:70  手机版
解决时间 2021-01-28 07:44
  • 提问者网友:欲劫无渡
  • 2021-01-27 19:40
as3.0 当跳到其他帧的时候关闭当前帧的声音
最佳答案
  • 五星知识达人网友:患得患失的劫
  • 2021-01-27 21:03
单独控制声音,暂时知道的有两种方法,
1、元件控制,将声音放到影片剪辑中去,之后声音同步属性选“数据流”,延长帧,到达或超过声音流(即蓝色的波形)长度。


控制方法:直接停止和播放影片剪辑即可。


2、使用Sound类进行播放声音


控制方法:在Sound.play()时,有返回SoundChannel类,此时将SoundChannel记录起来,在需要停止时使用SoundChannel.stop();来停止声音


另外,stopAllSound()是错误的代码,应该是stopAllSounds(),少了个s。而且stopAllSounds只适用于as2.0。功能跟SoundMixer.stopAll();一样,也是全部停止的。


给个Sound类停止例子代码
import flash.media.Sound;
import flash.media.SoundChannel;
import flash.utils.getDefinitionByName;

var sound:Sound = getSound("url_sound");//url_sound是库中声音的AS链接
var channel:SoundChannel = sound.play();

//停止代码,在需要停止时,调用
//channel.stop();


function getSound(url:String):Sound{
var cls:Class = getDefinitionByName(url) as Class;

return new cls() as Sound;
}

//之所以使用函数来获取声音,主要是考虑到多声音情况。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯