Flash AS3.0 加載外部資源(圖片,MP3,SWF)的兩種方式


關於AS3加載圖片等外部資源,我常用的有兩種方式:Loader和Embed,各自的特點,總結如下:
Embed:在Flash編譯階段就將資源嵌入,也就是說圖片資源是會被編譯進swf文件里面去的;這樣子的好處是代碼比較簡潔,使用方便,也不存在加載順序的問題,缺點是會增大swf文件的體積 
Loader:在Flash運行階段動態加載資源,這種方式不會影響swf文件的體積,而且可以很靈活地更改你要加載的資源,但是有可能會遇到路徑變更或者跨域問題,同時,過多地使用Loader去動態加載無疑會加重服務器負擔,因此需要和Embed權衡使用 
書寫的例子如下:
Embed:
[Embed(source = "../assets/images/closeBtn.png")]
private var closeBtnImage:Class //需要嵌入的圖片對象
private var btnSprite:Sprite = new Sprite();
private function test():void {
var bmp:Bitmap = new closeBtnImage();
btnSprite.addChild(bmp);
}
Loader:
private function addItem():void {
var loader:Loader = new Loader();
loader.load(new URLRequest("http://zhufei.de/something.png"));
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loadComplete);
}
//監聽到Loader加載完畢以后執行的函數
private function loadComplete(e:Event):void {
var l:Loader=Loader(e.target.loader);//得到Loader對象
var bm:Bitmap = Bitmap(l.content);//Loader里面的內容
trace(l);
trace(bm);
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM