English 中文(简体)
AS3 - 装载前机偶尔打上装货图像或外壳
原标题:AS3 - preloader occasionally won t load images, or external swf
  • 时间:2009-09-25 17:05:39
  •  标签:

第一问题:希望你们能够提供帮助。 I m完全流氧化。

我制作了一个闪幻灯,把图像上载。 在对图像进行预载后,它着手装上外部闪电文档,然后是图像。 问题非常偶然,它实际上不会把图像装上眼光,我只看上去,但是它可能仍然装上外部的 s。 此外,它可能采取相反的做法,并装上图像,而不是装上外部 s。

我无法复制后者,尽管客户已几次通知。 对我来说,前者会发生,但很少发生。

这里是(我认为)相关法典:

function onXMLLoadComplete(e:Event):void {
// create new xml with the received data
xmlSlideshow = new XML(e.target.data);
// get total slide count
// misc xml data
info_holder.mcInfo.lbl_tagline.text = xmlSlideshow.misc.@tagline;
info_holder.mcInfo.goToUrl_btn.lbl_view.text = xmlSlideshow.misc.@view.toUpperCase();

intSlideCount = xmlSlideshow..img.length();
//trace(intSlideCount);
imageArray = new Array(intSlideCount);

for (var i:int = 0; i < intSlideCount; i++) {
    //imageArray[i] = new URLRequest(xmlSlideshow..img[i].@src);    
    var loader:Loader = new Loader();
    loader.load(new URLRequest(xmlSlideshow..img[i].@src));
    //trace(xmlSlideshow..img[i].@src);
    loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onImageLoadComplete); 
    //loader.load(imageArray[i]);
  }
}

function onImageLoadComplete(e:Event):void {

if (++numberOfImagesLoaded == intSlideCount) {
    // animate the info bar and then
    //trace(intSlideCount);
    //trace(numberOfImagesLoaded);
    info_holder.play();
    // switch the first slide without a delay   
    // reset index of images
    //load map div via jQuery
    if (ExternalInterface.available) {
        ExternalInterface.call( openMap );
    }
    intCurrentSlide = -1;
    switchSlide(null);
  }
}

现场是:http://www.奢侈uryportfolio.com。 - 看到你能复制上述问题吗?

感谢!

问题回答

这里需要指出的是,你最有可能造成这一问题。 你的法典是好的,不会给我带来错,但是,通过一个阵列、制造负荷和每艘船装载,这是坏的想法。 下面可以介绍你再次提出的问题。 包括我本人在内的大多数人都使用预算托管服务(BLUEHOST个人),这对他们来说是巨大的,但通常都是共用的箱子,你想优化你们的场地负荷。 围绕这一点的方法非常简单。

规划:

我们不单单靠一阵列,一旁是一旁的,一旁是一旁的,一旁是一旁的,一面是用数据提供方的阵列空。 尽管如此,你需要建立一种功能,以开始装上第一个和随后的图像。

private var images:Array = ["image1.jpg", "image2.jpg"];

private function _loadImage():void
{
    var loader:Loader = new Loader();
    var req:URLRequest = new URLRequest(images.shift()); //Removes and returns first element in an array.
    loader.contentLoaderInfo.addEventListener(Event.COMPLETE. _onImageComplete);
}

private function _onImageComplete(e:Event):void
{
    var bmp:Bitmap = e.target.content as Bitmap;
    _someContainer.addChild(bmp);
    if(images.length > 0) _loadImage(); //Calls _loadImage function until array is empty.
}

综上所述,贵网站实际上应当更快地装上任何how子,对装上、右上、上下、或不管你们的图像如何绘制,都会对装上单线。

ALSO:

你们需要聆听不寻常的错误事件和 catch的错误。 如果出现错误,只要有这些操作人员,而且有某种直观的代码,那么你可以让自己知道有错误,在哪一点发生错误;这样,它就只能从这个地方开始装货,无论是支持某个编号,还是通过一个阵列重新开始。

我不打算这样做,因为我真心不知会,但任何闪电动手都应使用闪闪电10号发射器,并用一旁听的话说,象“火焰”号这样的东西是必须的,但在这个特殊情况下,变压者会告诉你很多。

我从你现场的实迹看,看到一些令人感兴趣的警告,可能也应予以处理。

Good luck.

这里的问题是:

    var loader:Loader = new Loader();
    loader.load(new URLRequest(xmlSlideshow..img[i].@src));
    //trace(xmlSlideshow..img[i].@src);
    loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onImageLoadComplete); 
    //loader.load(imageArray[i]);

在该组末,<代码>Loader对你创建的门槛值不适用;没有提及任何内容,因此它有资格领取垃圾收集,即,在某个时候(可能)闪电机将清除分配给该物体的记忆。

大部分时间,GC赢得了一个小时的电梯,因此,你的工作量很可能会奏效。 但有时,GC将踢,你将失去其中一些装载物体。

因此, your关在你身上! 储存在另一阵列中(远在您的<代码>>上)。 阵列将予罚款,然后在COMPLETE向每一方发射之后予以清理。

除此以外,还可做得更好:

var loader:Loader = new Loader();
// Note the position of this line!
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onImageLoadComplete); 
loader.load(new URLRequest(xmlSlideshow..img[i].@src));

而不是:

var loader:Loader = new Loader();
loader.load(new URLRequest(xmlSlideshow..img[i].@src));
// Note the position of this line!
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onImageLoadComplete); 

因为在装货单的某些情况下,COMPLETE将在你增加听众之前发射! 保证你在<>之前加上你的听众,在一切局势中开始可能引发事件的行动。 希望这一帮助!

我看不出你(原)的包裹。 您是否试图在装载机上添加一个错误的手稿?

loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, onError);
function onError(e:IOErrorEvent) {
    trace("Catch error in a log file")
}

如果你试图追踪断断断续续的 b,你的第一步是登记Loader可能发射的错误处理事件。 你的装货员可能与服务器或一些服务器发生定期通信错误,这些警示刚刚变成黑洞,因此你看到这种不规则的行为。

http://livedocs.adobe.com/flash/9.0/Action/RosangRefV3/flash/display/Loader.html#load%2829





相关问题
热门标签