【问题标题】:Flash: How to preload upcoming SWF while current one playsFlash:如何在当前播放时预加载即将到来的 SWF
【发布时间】:2011-02-10 16:22:55
【问题描述】:

我有一个播放 XML 文件中列出的 SWF 的 Flash 幻灯片。我希望在显示当前的 SWF 时加载即将到来的 SWF。我尝试了LoadMovieLoadMovieNum 的各种组合,包括创建一个空的影片剪辑,但有些东西我就是没有得到。

现在,在完成所有文件的第一轮之后,它在幻灯片之间平滑过渡,但我希望它预先加载,以便它在第一次没有“正在加载...”屏幕的情况下过渡.

可以在这里查看: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();
}
}

我将不胜感激。

【问题讨论】:

    标签: actionscript flash slideshow preload


    【解决方案1】:

    您可以使用 MovieClipLoader 类来实现。可以在 actionscript.org 上找到简短的 tutorial,或者您可以查看上面的 docs

    【讨论】:

    • 再次感谢。我按照你的建议在movieClipLoader 类中找到了我需要的东西。
    • 优秀。每当您加载外部 swf 或图像时,MovieClipLoader 可能是您最好的选择。与其他任何方式相比,您可以获得更多的控制权。
    猜你喜欢
    • 2023-03-30
    • 1970-01-01
    • 2011-10-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多