我目前有幾個movieclip,我加載到另一個movieclip container
。我使用MovieClipLoader類來加載它們並使用onLoadProgress
,onLoadStart
,onLoadInit
,onLoadComplete
和onLoadError
聽衆。Flash MovieClipLoader實例行爲不正確
在onLoadProgess
偵聽器中,我偵聽加載的字節和總字節數,並將該百分比放入另一個影片剪輯(我暫時放在舞臺上顯示加載的文本框)。問題在於,加載動畫片段開始在40%加載標記上播放,並且不等待加載100%。這很奇怪,我不明白我會做錯什麼。這裏是我的代碼:
// loading icon to show progress
var loading_icon:MovieClip = new MovieClip();
// load PassionPurpose.swf
var passionPurposeLoader = new MovieClipLoader();
var passionPurpose:MovieClip = this.container.createEmptyMovieClip("passionPurpose", this.container.getNextHighestDepth());
passionPurpose._y = groupOverviewHeight;
passionPurposeLoader.onLoadInit = function (targetMc:MovieClip) {
trace("Init... "+PPFile);
loading_icon._visible = false;
loading_icon.unloadMovie();
}
passionPurposeLoader.onLoadStart = function (targetMc:MovieClip) {
loading_icon = passionPurpose._parent.attachMovie("loading_icon_ch1","loading_icon_ch1",passionPurpose._parent.getNextHighestDepth());
loading_icon._x = 245 - loading_icon._width/2;
loading_icon._y = 207 - loading_icon._height/2;
loading_icon._visible = true;
}
passionPurposeLoader.onLoadComplete = function (targetMc:MovieClip) {
trace("Complete... "+PPFile);
loading_icon._visible = false;
loading_icon.unloadMovie();
}
// progress function
passionPurposeLoader.onLoadProgress = function(targetMc:MovieClip, loadedBytes:Number, totalBytes:Number) {
// determine percentage
var percentage:Number = Math.round(loadedBytes/totalBytes * 100);
trace("Loading... "+loadedBytes+"/"+totalBytes+" "+PPFile);
loading_icon.loading_txt.text = percentage + "%";
if (loadedBytes == totalBytes) loading_icon.unloadMovie();
}
// there was an error loading the movieclip
passionPurposeLoader.onLoadError = function (targetMC, errorCode) {
trace("Error");
}
有沒有人有某種解釋或解決方案?