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

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

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

Регистрация: Oct 2009
Сообщений: 386
По умолчанию подгрузка Изображения

Подскажите как мне сначала считать в массив все имена картинок(фаилов) из определённой папки. и потом подгрузить один из них по выбору пользователя!!?

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

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Из папки на сервере или локальной (на машине пользователя)?
__________________
Reality.getBounds(this);

Старый 17.09.2011, 22:01
areostar вне форума Посмотреть профиль Отправить личное сообщение для areostar Найти все сообщения от areostar
  № 3  
Ответить с цитированием
areostar

Регистрация: Oct 2009
Сообщений: 386
на компе. думаю XML пользовать:

Набрасал такой хмл:

Код:
<?xml version="1.0" encoding="UTF-8"?>
   <gallery>
   <image video="f_video/first.swf">f_images/first.png</image>
   <image video="f_video/secons.swf">f_images/second.png</image>   
   </gallery>
В сети нащёл такой пример для чтения чтения

Код:
var myXML:XML = new XML(); 
    var XML_URL:String = "http://www.example.com/Sample3.xml";  
    var myXMLURL:URLRequest = new URLRequest(XML_URL);    
    var myLoader:URLLoader = new URLLoader(myXMLURL); 
    myLoader.addEventListener("complete", xmlLoaded); 
 
    function xmlLoaded(event:Event):void 
   { 
        myXML = XML(myLoader.data); 
        trace("Data loaded.");   
   }
как я понимаю в слушателе получаем содержимое файла а как его парсить!? получать содержимое узлов и параметров!?

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

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Особо умного не скажу, но позанудствую.

FlashPlayer не предоставляет сервиса перечисления файлов и директорий.

Цитата:
На компе.
"Компом" является и сервер и машина пользователя. Суть различий лишь в роли каждого из них.
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Старый 17.09.2011, 23:29
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 5  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
areostar, ну на самом деле, зачем Вы подменяете понятия? К чему было слово "папка", если вопрос - "загрузить изображения из xml-списка"? Тема наверное на первом месте как по популярности на этом форуме так и вообще в списке скиллов.
Код AS3:
function xmlLoaded(event:Event):void 
{ 
    myXML = XML(myLoader.data); 
    trace("Data loaded.");   
    var imageList:XMLList = myXML..image.text();
    trace(imageList.toXMLString());
}
Почитайте в хелпе про е4х и XMLList. Ответа на вопрос "как парсить" нет, пока нет формата, в который парсить. Давайте повнимательней.

Добавлено через 9 минут
если в массив, то можно так
Код AS3:
var imageList:XMLList = myXML..image.text();
var imageURLs:Array = imageList.toXMLString().split("\r");
trace(imageURLs);
или циклом. XLList это индексированный список, с ним можно работать как с массивом, в том числе проходить по нему как по массиву циклом. Именно поэтому само преобразование в массив часто бессмысленно и можно пользоваться самим XMLList.
__________________
Reality.getBounds(this);

Старый 18.09.2011, 01:04
areostar вне форума Посмотреть профиль Отправить личное сообщение для areostar Найти все сообщения от areostar
  № 6  
Ответить с цитированием
areostar

Регистрация: Oct 2009
Сообщений: 386
Сделал как сказали! сначало комп чиитал! но при очередной компеляции выкинул TypeError: Error #1090: XML parser failure: element is malformed.

в списке ощибок токого номера не нащел! о что не так

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

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
компеляции [x]. Тему можно закрывать.
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Старый 18.09.2011, 01:29
areostar вне форума Посмотреть профиль Отправить личное сообщение для areostar Найти все сообщения от areostar
  № 8  
Ответить с цитированием
areostar

Регистрация: Oct 2009
Сообщений: 386
С ошибкой разобрался!

Только var imageURLs:Array = imageList.toXMLString().split("\r");
чтото не работает! хотя в имеджлесте все что надо есть! как ещё от туда можно данные вынуть!

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

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Код AS3:
var imageURLs:Array = [];
for(var i:uint = 0; i < imageList.length(); i++)
{
    imageURLs.push(imageList[i]);
}
trace(imageURLs);
Еще раз замечу, я бы не стал так делать - выдернуть URL из XMLLista также просто, как и из массива - imageList[i].
__________________
Reality.getBounds(this);

Старый 18.09.2011, 13:29
areostar вне форума Посмотреть профиль Отправить личное сообщение для areostar Найти все сообщения от areostar
  № 10  
Ответить с цитированием
areostar

Регистрация: Oct 2009
Сообщений: 386
Считал содержимое хмл в массив. Теперь надо подгрузить и разестить на сцене фотки пишу

Код:
  var x_start:int = 10, y_start:int = 10;
			for(var i:uint = 0; i < image_array.length; i++)
                                                {
				var mc:MovieClip = new MovieClip();
				
				
				var url_request:URLRequest = new URLRequest(image_array[i]);
				loader.load(url_request);
                                                                loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);
				loader.x = 0; loader.y = 0; mc.addChild(loader);
				gallery_array.push(mc);
				gallery_array.push(mc);
			}
			
			for(var j:uint = 0; j < gallery_array.length; j++)
			{
				gallery_array[j].x = x_start;
				gallery_array[j].y = y_start;
				stage.addChild(gallery_array[j]);
				x_start += 150;
			}

                                                private function onComplete(e:Event):void 
		                {
			      loader.contentLoaderInfo.removeEventListener(Event.COMPLETE, onComplete);
		                }
но появляется только второе фото!! тресом проверял все в порядке! может я ещё гдето ошибся!?

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

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

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


 


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


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