15.1.创建Sound对象及载入声音

问题
我想载入声音到SWF应用程序上。
解决办法
创建一个Sound对象,载入外部的声音文件
讨论
创建一个Sound对象很容易,这跟创建其他类实例差不多,首先记得先引入Sound类库:
+展开
-ActionScript
import flash.media.Sound;
Var _sound :Sound = new Sound( );

接着我们需要一个声音文件,比如song.mp3,和swf文件放在服务器的同一个目录下。

要载入声音文件到Sound对象上,首先创建一个URLRequest对象(需要导入flash.net.URLRequest):
+展开
-ActionScript
soundFile = new URLRequest("song.mp3");
_sound.load(soundFile);

可以把上面两句简写成下面那样:
+展开
-ActionScript
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"));
}
}
}

这个类有个属性:_sound,将通过它播放声音。注意上面的代码并没有真正开始播放,这仅仅是做好准备工作,具体如何控制声音播放将在第15.2 章介绍。

最简捷的写法就是直接把URLRequest传递给sound构造器:
+展开
-ActionScript
public function LoadSoundExample( ) {
_sound = new Sound(new URLRequest("song.mp3"));
}

当传递URLRequest给构造器时,Sound会自动调用load( )方法载入声音数据。当只播放一首声音时这种技巧很有效简洁。

否则当播放多首最好自己调用load( )方法,最好的例子就是音乐播放器,当一首音乐被选择,它的路径即被传递给load( )方法,准备播放。

加支付宝好友偷能量挖...


评论(0)网络
阅读(131)喜欢(0)flash/flex/fcs/AIR