您的位置:首页 > 其它

flex中使用Embed方式嵌入资源

2011-01-16 18:32 218 查看
在做公司的播放器时候,开始为了减少swf的大小,并没有把资源在编译时候打包到swf中,而是采用运行时候通过外部加载方式。但是,这种方式虽然可以减少swf的大小,但是,在实际运行时候,由于用户大多数使用IE6(早该淘汰了),在并发请求的数目是有限制的(2个),所以,这样往往会资源加载失败的情况。因此,打算采用Embed方式把资源打包到swf中。不过,在这个播放器中,有不少的资源是,需要根据不同状态进行切换的。所以,建立一个Resourse类来管理这些资源。具体代码如下:

public final class Resource
{
[Embed(source="/../assets/toolbar_play.png")]
public static var TOOLBAR_PLAY:Class;
[Embed(source="/../assets/toolbar_pause.png")]
public static var TOOLBAR_PAUSE:Class;
[Embed(source="../assets/toolbar_ff.png")]
public static var TOOLBAR_FF:Class;
[Embed(source="../assets/toolbar_rew.png")]
public static var TOOLBAR_REW:Class;
[Embed(source="../assets/loading_video.swf")]
public static var LOADING_SWF:Class;

}


这样通过这个Resource类进行管理。

使用方法是:

var testImg:Image = new Image();
testImg.source = Resource.TOOLBAR_PAUSE;


如果在运行时候需要更改testImg的source,只需要重新给source赋其他的资源对象就可以了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: