2013-10-07 61 views
0

我想在舞臺上有多個movieClip符號實例,因此每個實例都加載不同的圖像。 movieClip符號應該有2個幀。包含加載器進度條的動作腳本的第一幀;第二個框架帶有一個顯示外部圖像的UILoader。AS3 - MovieClip Preloader

我知道如何爲swf文件實現預加載器。而且我知道如何使用UILoader創建一個movieClip符號,並使用不同的圖像創建多個實例。

因爲我想把這個文件放到網上,我需要每個實例的預加載器。但我無法弄清楚如何在實例中使用預加載器(不起作用;實際圖像是在動畫片段的第二幀還是在外部加載)

回答

0

這可以簡單地通過使用progressBar和加載器類。

import flash.display.Loader; 
import fl.controls.ProgressBar; 
import flash.events.Event; 
import fl.containers.UILoader; 

var myLoader:Loader = new Loader(); 
var my_pb:ProgressBar = new ProgressBar(); 

addChild(my_pb); 

myLoader.load(new URLRequest("http://www.SomeImageURL....")); 
my_pb.source = myLoader.contentLoaderInfo; 

myLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, completefunction); 

function completefunction(e:Event):void 
{ 
    removeChild(my_pb); 
    myLoader.content.width = 200; 
    addChild(myLoader); 
} 

要讓MovieClip元件使用不同的圖像,我們只需要一個字符串變量添加到MovieClip和URL每次我們創建一個新的實例時傳遞給該變量。

1

這是因爲Stage的行爲與MovieClip不同。您需要以編程方式執行預加載器。爲MovieClip符號定義一個類並使其他MC的實例類似於預加載器,然後使其可見並在圖像更改時播放它添加一個eventListener:addEventListener(ProgressEvent.PROGRESS, updateInfo);