Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Галерея ActionScript+XML (http://www.flasher.ru/forum/showthread.php?t=152547)

v_skoretsky 19.03.2011 16:45

Галерея ActionScript+XML
 
Вложений: 1
Добрый день всем. Сразу скажу, что я во флеше и екшене новичек, но поставили задачу создать флеш-галерею и при том очень быстро. После недели разбирательства (почти безрезультатного) решил обратиться к знающим людям за помощью. Задача следующая - создать галерею как на прилагаемой картинке (нечто похожее у IPada). Обьясню поподробнее.
1. Изначально мы видим стопки с фото, каждая из которых (стопок) должна отвечать за определенный набор картинок, который мы зададим в XML
2. Дальше, когда мы наводим на какую-то стопку она "расползается" по окну ролика, скажем так, и мы видим какие еще картинки в этой стопке есть.
3. Если мы нажимаем на какую-то стопку в новом окне ролика открыается уже большая картинка и под ней маленькие превьюшки остальных картинок, но только тех, которые находятся в той стопке.
4. Размещение стопок сделать следующее - 3Х3, то есть три ряда по три стопки в каждом и добавить кпопки "назад-вперед" для перелистывание этих блоков 3х3.
Как-то так )
Насколько я успел разобраться, мне нужно (но не знаю как :-( ):
1. В XML задать своего рода папки. Тоесть, например как на прилагаемой картинке, 1-я стопка это "Тайвань" в ней N-е кол-во фото, вторая - "Лас-Вегас" и в ней какое-то количество фото, которое будет браться с XML документа.
2. Как описать все это в ActionScripte. Как загрузить XML я знаю, но как разместить отдельно стопки - нет.
3. Наверное самое сложное- как описать, чтобы стопки "расползались". Насколько я понимаю, для каждой ячейки (стопки) в таблице 3х3 будет свой алгоритм. Тоесть, 1-я ячейка расползается вправо и вниз, 2-я в стороны и вниз, 3-я - влево и вниз... 9-я -влево и вверх.
4. Ну и последнее, наверное, загрузка больших картинок.
Вот пожалуй и все. Извиняюсь за количество слов, просто хотелось как можно яснее описать задачу.
Буду рад любой помощи, заранее благодарен.

mooncar 19.03.2011 16:55

На форуме действует правило - "одна тема - один вопрос". Разбивайте вашу работу, начинайте ее сами делать и по ходу задавайте вопросы, если что-то не получается. Последовательно.
Иначе чувствую, что вам предложат обратиться в раздел "Вакансии".
Уж больно широк круг задач, и ответ на вопросы предполагает написание практически всей работы за вас.

v_skoretsky 19.03.2011 17:14

Цитата:

Сообщение от mooncar (Сообщение 981839)
На форуме действует правило - "одна тема - один вопрос". Разбивайте вашу работу, начинайте ее сами делать и по ходу задавайте вопросы, если что-то не получается. Последовательно.
Иначе чувствую, что вам предложат обратиться в раздел "Вакансии".
Уж больно широк круг задач, и ответ на вопросы предполагает написание практически всей работы за вас.

Я все прекрасно понимаю, и не ожидаю, что кто-то напишет все за меня. Я просто надеюсь на какие-то подсказки, или где об этом можно почитать. Например, 1-й вопрос-как описать в xml структуру. Может кто-то подскажет как это привильно называется, чтоб я мог поискать в инете. Насколько я понял, в XML все описывается нодами, а вот если несколько картинок нужно обединить в отдельную папку, это делается с помощью "поднод" или как? И т.д. Или, например, расползание картинок. Меня бы устроил ответ что-то типа "это можно описать с помощью такого-то оператора..."

Haiat 19.03.2011 17:34

Простой пример XML файла, для Вашего случая

Код:

<?xml version="1.0" encoding="UTF-8"?>
<data>
 <gallery>
  <album name="1">
  <img name="1" small="asdasd.jpg" big="weqwe.jpg" />
  <img name="2" small="asdasd.jpg" big="weqwe.jpg" />
  <img name="3" small="asdasd.jpg" big="weqwe.jpg" />
    .....
  </album>
  <album name="2">
  <img name="1" small="asdasd.jpg" big="weqwe.jpg" />
  <img name="2" small="asdasd.jpg" big="weqwe.jpg" />
  <img name="3" small="asdasd.jpg" big="weqwe.jpg" />
    .....
  </album>
  ......
 </gallery>
</data>


v_skoretsky 19.03.2011 17:49

Цитата:

Сообщение от Haiat (Сообщение 981851)
Простой пример XML файла, для Вашего случая

Спасибо большое за ответ. Насколько я понимаю, в ActionScripte теперь нужно задать массив для <album name="...">

... Вот, изменил под свои нужды.
Код:

<?xml version="1.0" encoding="UTF-8"?>
<data>
 <gallery>
  <album name="1">
  <description>Vacation 2005 - Taiwan</description>
  <img name="1" small="Taiwan/01.jpg" big="Taiwan/01big.jpg" />
  <img name="2" small="Taiwan/02.jpg" big="Taiwan/02big.jpg" />
  <img name="3" small="Taiwan/03.jpg" big="Taiwan/03big.jpg" />
  </album>
  <album name="2">
  <description>Vacation 2006 - Las Vegas</description>
  <img name="1" small="Vegas/01.jpg" big="Vegas/01big.jpg" />
  <img name="2" small="Vegas/02.jpg" big="Vegas/02big.jpg" />
  <img name="3" small="Vegas/03.jpg" big="Vegas/03big.jpg" />
  </album>
 </gallery>
</data>

Подскажите, пожалуйста, правильно? Просто хочется чтоб картинки были по папкам на компе

Haiat 19.03.2011 17:58

посмотрите, в параллельной теме идет идентичное обсуждение,в последних сообщениях)

NikolyA 19.03.2011 18:17

ну а теперь пишем под свой xml парсер и радуемся своей работе =)

v_skoretsky 19.03.2011 18:19

Цитата:

Сообщение от Haiat (Сообщение 981857)
посмотрите, в параллельной теме идет идентичное обсуждение,в последних сообщениях)

А какой именно теме, не подскажете?

Haiat 19.03.2011 18:21

http://www.flasher.ru/forum/showthread.php?t=152543

v_skoretsky 19.03.2011 18:48

Представляю на суд. Изменил немножко XML
Код:

<?xml version="1.0" encoding="UTF-8"?>
<data>
 <gallery columns="3" width="200" height="150">
  <album name="1">
  <description>Vacation 2005 - Taiwan</description>
  <img name="1" small="foto/Taiwan/small/01.jpg" big="foto/Taiwan/big/01.jpg" />
  <img name="2" small="foto/Taiwan/small/02.jpg" big="foto/Taiwan/big/02.jpg" />
  <img name="3" small="foto/Taiwan/small/03.jpg" big="foto/Taiwan/big/03.jpg" />
  </album>
  <album name="2">
  <description>Vacation 2006 - Las Vegas</description>
  <img name="1" small="foto/Vegas/small/01.jpg" big="foto/Vegas/big/01.jpg" />
  <img name="2" small="foto/Vegas/small/02.jpg" big="foto/Vegas/big/02.jpg" />
  <img name="3" small="foto/Vegas/small/03.jpg" big="foto/Vegas/big/03.jpg" />
  </album>
 </gallery>
</data>

И, собственно скрипт(начало):
Код:

var columns:Number;
var my_x:Number;
var my_y:Number;
var my_images:XMLList;
var my_total:Number;
var container_mc:MovieClip;
var preloaders_mc:MovieClip;
var myXMLLoader:URLLoader = new URLLoader();
myXMLLoader.load(new URLRequest("gallery.xml"));
myXMLLoader.addEventListener(Event.COMPLETE, processXML);
function processXML(e:Event):void {
var myXML:XML = new XML(e.target.data);
columns = myXML.@columns;
my_small_width = myXML.@width;
my_small_height = myXML.@height;
my_album = myXML.album
my_images = myXML.img
my_total = my_images.length();
myXMLLoader.removeEventListener(Event.COMPLETE, processXML);
myXMLLoader = null;
}

Хотелось бы узнать правильно делаю или нет?


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

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