[AS3]as3.0的sound类常用技巧整理
解决第一个问题:
如何把声音文件作为一个变量加载到swf文件中。
创建一个Sound对象,然后加载具体的声音文件到里面
创建一个Sound对象和创建其他对象一样简单,首先我们必须保证相关的类已经被导入。
import flash.media.Sound;
然后,直接创建声音对象的一个实例就可以了:
_sound = new Sound();
当然,现在你还需要为声音对象一个具体的声音,比如一首歌,结下来,我们在例子中提到的所有音乐都用song.mp3来代替,把它保存在.swf文件同一个目录下。
要想加载声音文件到刚刚建立的Sound对象中,还要先创建一个URLRequest对象(在此我们还必须导入相关的类import flash.net.URLRequest,通过字符串表示mp3文件的路径:
soundFile = new URLRequest(“song.mp3″);
接下来,我们就可以用下面这个语句来实现加载声音文件了:
_sound.load(soundFile);
当然我们还可以把上面的步骤用下面的方法来实现:
- package {
- import flash.display.Sprite;
- import flash.media.Sound;
- import flash.net.URLRequest;
- public class LoadSoundExample extends Sprite {
- private var _sound:Sound;
- public function LoadSoundExample( ) {
- _sound = new Sound( );
- _sound.load(new URLRequest(“song.mp3″));
- }
- }
- }
上面的类LoadSoundExample就有了一个_sound属性,你可以在任何时候用它来播放音乐。说明一下: 此时的声音还并没有开始播放。现在我们只是设置了有一个声音(sound)和它具体是什么样的声音(song.mp3)。具体如何播放该声音请看后面的教 程。
下面说一种更快捷的解决上面问题的方法:
public function LoadSoundExample( ) { _sound = new Sound(new URLRequest(“song.mp3″));}
当你用这种方法创建_sound文件的时候,实际上sound是调用其内部函数load()并开始加载数据了,如果你只想用你的sound对象加载一个声音文件的时候,这时一种非常简便的方法。
否则,也许先创建一个sound对象,然后当我们有需要的时候,调用它的load方法来加载数据会好一些。这面应用的例子比如:一个音乐播放器,当用户选择了一首歌之后,sound对象调用被选中歌曲的地址,这样就为播发这首歌曲做好准备了。
热门文章推荐
- [HLS]做自己的m3u8点播系统使用HTTP Live Streaming(HLS技术)
- [FMS]FMS流媒体服务器配置与使用相关的介绍
- [AS3]什么是M3U8,与HTML5的区别是什么
- AS2.0 让flash自适应全屏,并且不自动缩放
- [AS3]as3.0的sound类常用技巧整理
- [AS3]as3与ByteArray详解、ByteArray介绍、ByteArray用法
- 关于RTMP,RTMPT,RTMPS,RTMPE,RTMPTE协议的介绍
- [JS]分享浏览器弹出窗口不被拦截JS示例