Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 16.03.2009, 02:52
loover вне форума Посмотреть профиль Отправить личное сообщение для loover Найти все сообщения от loover
  № 1  
Ответить с цитированием
loover
 
Аватар для loover

Регистрация: Mar 2009
Сообщений: 357
По умолчанию проблема с галереей

есть код, грузящий XML:
Код AS3:
var xmlLoader:URLLoader = new URLLoader();
xmlLoader.addEventListener(Event.COMPLETE, xmlLoaded);
xmlLoader.load(new URLRequest("header2.xml"));
 
function xmlLoaded(e:Event):void
{
	xmlData = XML(e.target.data);
	xmlList = xmlData.children();
 
	for (var i:int = 0; i < xmlList.length(); i++)
	{
		imageLoader = new Loader();
		imageLoader.load(new URLRequest(xmlList[i].attribute("source")));
		imageLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, setupTween);
	}
}
... и нужно каждой картинке задать один и тотже эффект (изменение прозрачности (tween) через некоторое время). тут и возникла проблема: не знаю как назначить эффект каждой картинке по отдельности. получается только всем сразу. и то, видна только последняя картинка.

Старый 16.03.2009, 03:12
serenkiy вне форума Посмотреть профиль Отправить личное сообщение для serenkiy Найти все сообщения от serenkiy
  № 2  
Ответить с цитированием
serenkiy
 
Аватар для serenkiy

Регистрация: Jan 2009
Сообщений: 60
Отправить сообщение для serenkiy с помощью ICQ
Вы для начала лучше загрузите все картинки и запишите их в отдельный массив. Потом после загрузки уже управляйте прозрачностью.

Старый 16.03.2009, 22:00
loover вне форума Посмотреть профиль Отправить личное сообщение для loover Найти все сообщения от loover
  № 4  
Ответить с цитированием
loover
 
Аватар для loover

Регистрация: Mar 2009
Сообщений: 357
спасибо. мне удалось грузить картинку, назначать ей эффект и повторять цикл, пока не кончатся картинки. но возникла другая проблема. мне нужен эфект зацикливания, т.е. после появления последнего изображения начинает появляться первое и т.д. с описанным мною выше способом это получается, но flash грузин картинки опять и опять. а как уже загруженное изображение сохранить и применять эффект уже к нему? мне кажется, надо использовать addChild и контейнеры. но как?

Старый 16.03.2009, 22:36
alekson вне форума Посмотреть профиль Отправить личное сообщение для alekson Найти все сообщения от alekson
  № 5  
Ответить с цитированием
alekson

Регистрация: Aug 2008
Сообщений: 128
Отправить сообщение для alekson с помощью ICQ
контейнер это тотже массив... продолжать?

Старый 16.03.2009, 23:12
Alex Lexcuk вне форума Посмотреть профиль Отправить личное сообщение для Alex Lexcuk Посетить домашнюю страницу Alex Lexcuk Найти все сообщения от Alex Lexcuk
  № 6  
Ответить с цитированием
Alex Lexcuk

блогер
Регистрация: Mar 2008
Адрес: Донецк_city
Сообщений: 1,094
Записей в блоге: 5
>> но flash грузин картинки опять и опять
нифига подобного одна картинка - одна загрузка,
Во время загрузки синхронизация твина с загрузками.
После того как все загрузилось - цикл.

Старый 17.03.2009, 01:44
loover вне форума Посмотреть профиль Отправить личное сообщение для loover Найти все сообщения от loover
  № 7  
Ответить с цитированием
loover
 
Аватар для loover

Регистрация: Mar 2009
Сообщений: 357
ту alekson:
да
ту Alex Lexcuk:
ну да, один лоадер на одну картинку. а после запуска цикла загрузки все начинается заново. разве нет?

с новыми клипами потихоньку разбираюсь. правда, возникла проблема с таймером. если событие в цикле for..in каждый раз запускает таймер, то результат работы таймера виден лишь для последнего события. это нормально?

Старый 17.03.2009, 09:09
Alex Lexcuk вне форума Посмотреть профиль Отправить личное сообщение для Alex Lexcuk Посетить домашнюю страницу Alex Lexcuk Найти все сообщения от Alex Lexcuk
  № 8  
Ответить с цитированием
Alex Lexcuk

блогер
Регистрация: Mar 2008
Адрес: Донецк_city
Сообщений: 1,094
Записей в блоге: 5
>>ну да, один лоадер на одну картинку. а после запуска цикла загрузки все начинается заново. разве нет?

Вы хоть код по ссылке смотрели? Вот функция, которая грузит картинки
Код:
private function onward():void {
			if (count < picArr.length) {
				trace('Гружу');
				loader = new URLLoader();
				loader.dataFormat= URLLoaderDataFormat.BINARY;
				req.url = path + picArr[count];// +'?=' + new Date().getTime();
				trace(req.url);
				loader.load(req);
				loader.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
				loader.addEventListener(ProgressEvent.PROGRESS,progressHandler);
				loader.addEventListener(Event.COMPLETE,loaderComplete);
			}
			if (count == picArr.length) {
				allPicLoadingTr = true;
				tween.start();
				position = nextPreCont;
			}
		}
count - счетчик загрузок
picArr - массив в котором хранятся имена файлов с картинками
Вот
Код:
if (count < picArr.length) {
				trace('Гружу');
Так как же оно может повторно грузить если, когда все загружено, повторная загрузка просто невозможна??? Вы его хоть тестили??? там даже трасе выводится "гружу", а после того как все загрузилость "гружу" в трасе не идет.

Старый 17.03.2009, 20:20
loover вне форума Посмотреть профиль Отправить личное сообщение для loover Найти все сообщения от loover
  № 9  
Ответить с цитированием
loover
 
Аватар для loover

Регистрация: Mar 2009
Сообщений: 357
согласен, приведенный вами код действительно грузит картинки пока их количество не больше указанного в файле (хотя его можно уменьшить раза в два). но как повторить анимацию появления?

Старый 17.03.2009, 21:19
Alex Lexcuk вне форума Посмотреть профиль Отправить личное сообщение для Alex Lexcuk Посетить домашнюю страницу Alex Lexcuk Найти все сообщения от Alex Lexcuk
  № 10  
Ответить с цитированием
Alex Lexcuk

блогер
Регистрация: Mar 2008
Адрес: Донецк_city
Сообщений: 1,094
Записей в блоге: 5
>>согласен, приведенный вами код действительно грузит картинки пока их количество не больше указанного в файле (хотя его можно уменьшить раза в два). но как повторить анимацию появления?
Есть куча способов - если перейти по ссылке, которую я давал можно узнать об одном, не лучшем, но рабочем варианте. Повторю еще разок: картинки сначала грузятся, плавно появляясь, затем работают твины. Один твин делает анимацию появления, второй работает вместо таймера (просто прикололся, замечу, что твин ничем не хуже таймера, хотя лучше использовать таймер, однако еще лучше использовать Event.ENTER_FRAME (так еще лучше будет)

Создать новую тему Ответ Часовой пояс GMT +4, время: 01:18.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 01:18.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.