Просмотр полной версии : Динамическая загрузка картинок, не удаляются дети - addChild(picLoader)
Нужно, чтобы в слайдшоу, при загрузке следующей фотки, была видна предыдущая.
Если загружать друг на друга — флэш сжирает всю оперативку(фоток около тысячи):
function LoaderExample(nextfoto):void
{
var picLoader:Loader = new Loader();
var request:URLRequest = new URLRequest(nextfoto);
picLoader.load(request);
addChild(picLoader);
}
Использование контейнера (как здесь http://flasher.ru/forum/showthread.php?t=83673#2) даёт тот же самый эффект.
Как видеть предыдущую картинку, при загрузке новой?
Грузить попеременно в два разных лоадера, меняя у них глубину.
Спасибо, сделал так:
var loader1:Loader = new Loader();
var loader2:Loader = new Loader();
var ldrcount:uint;
function LoaderExample(nextfoto):void
{
var request:URLRequest = new URLRequest(nextfoto);
loader1.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete1);
loader2.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete2);
if(true == ldrcount%2){
loader1.load(request);
ldrcount++;
}else{
loader2.load(request);
ldrcount++;
}
}
public function onComplete1(event:Event):void {
swapChildren(loader1, loader2);
}
public function onComplete2(event:Event):void {
swapChildren(loader2, loader1);
}
Правда события запаздывают. А почему дебагер вылетает перед загрузкой второй картинки?
Ничего.
У меня отдельный класс Picloader();
Если закомментить:
//loader1.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete1);
//loader2.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete2);
то не вылетает.
Прослушка вырубает?
Когда вылетает дебагер, он должен написать сообщение, дать стэк ошибки.
Nirth Вот Stack:
file:/C:/Documents and Settings/Администратор/My Documents/Flex Builder 2/Slideshow/bin/Slideshow-debug.html
Main Thread (Suspended)
Picloader/Picloader::onComplete2
На обычном модеме, первые фотки грузяться нормально, потом потухают, как будто лодеры срабатывают одновременно.
Как фиксить?
http://ravenland.ru/about/upload/Slideshow2.swf
господи ну пишет же тебе два эксепшенa
TypeError: Error #1010: A term is undefined and has no properties.
at Previewloader/myPreviewLoader()
at Slideshow/::ShowPreview()
at Slideshow/::parseData2()
at Slideshow/onLoaded2()
at flash.events::EventDispatcher/flash.events:EventDispatcher::dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at flash.net::URLLoader/flash.net:URLLoader::onComplete()
TypeError: Error #1009: Cannot access a property or method of a null object reference.
at Slideshow/::parseData()
at Slideshow/onLoaded()
at flash.events::EventDispatcher/flash.events:EventDispatcher::dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at flash.net::URLLoader/flash.net:URLLoader::onComplete()
В первом случае свойство не найдено, во втором null.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.