1
我有一個Flash幻燈片,播放列在XML文件中的SWF文件。我想在即將顯示的SWF中加載即將到來的SWF。我嘗試了各種各樣的LoadMovie
和LoadMovieNum
的組合,包括創建一個空的影片剪輯,但有一些我只是沒有得到。Flash:如何預先加載即將播放的SWF,同時播放當前播放的內容
現在,在完成所有文件的第一輪之後,它可以平滑地從幻燈片切換到幻燈片,但我希望它能夠預加載,以便在第一次沒有「加載...」屏幕時進行轉換周圍。
可以看這裏:slideshow
我應該在哪裏把LoadMovie
線加載下一個文件(image[p+1]
),以及應該如何看待?
function loadXML(loaded) {
if (loaded) {
xmlNode = this.firstChild;
image = [];
description = [];
total = xmlNode.childNodes.length;
for (i=0; i<total; i++) {
image[i] = xmlNode.childNodes[i].childNodes[0].firstChild.nodeValue;
description[i] = xmlNode.childNodes[i].childNodes[1].firstChild.nodeValue;
}
firstImage();
} else {
content = "file not loaded!";
}
}
xmlData = new XML();
xmlData.ignoreWhite = true;
xmlData.onLoad = loadXML;
xmlData.load("xmlfile.xml");
/////////////////////////////////////
back_btn.onRelease = function()
{
backImage();
};
next_btn.onRelease = function()
{
nextImage();
};
p = 0;
function nextImage() {
if (p<(total-1)) {
p++;
trace(this);
_root.mc_loadfile.loadMovie (image[p]);
_root.movie_name.text = image[p];
next_btn._visible = true;
back_btn._visible = true;
if (getBytesLoaded() == getBytesTotal())
slideshow();
}
else if (p == (total-1)) {
p = 0;
firstImage();
}
}
function backImage() {
clearInterval(myInterval);
if (p>0) {
--p;
_root.mc_loadfile.loadMovie (image[p]);
_root.movie_name.text = image[p];
next_btn._visible = true;
if (p != 0) {
back_btn._visible = true;
}
else {
back_btn._visible = false;
}
slideshow();
}
}
我很感激任何幫助。
謝謝,我現在檢查一下。 – pthesis 2010-04-21 16:12:27
再次感謝。我在你的建議中找到了我所需要的movieClipLoader類。 – pthesis 2010-04-22 00:25:47
非常好。無論何時加載外部swf或圖像,MovieClipLoader可能都是您最好的選擇。與其他任何方式相比,你對它有更多的控制。 – 2010-04-22 16:07:03