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

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

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

Регистрация: Dec 2010
Сообщений: 121
По умолчанию Флеш альбом

Ребята, помогите, пожалуйста, найти и исправить ошибку! Делаю флеш-альбом с перелистыванием страниц с использованием xml. Вот код подключения и использования xml файла:
Код AS3:
import flash.net.URLLoader;
import flash.net.URLRequest;
import flash.events.Event;
import flash.display.Loader;
 
var xmlLoader:URLLoader = new URLLoader(new URLRequest("xml/my.xml"));
var xmlData:XML;
var xmlList:XMLList;
var picLoader:Loader;
xmlLoader.addEventListener(Event.COMPLETE, getXML);
function getXML(e:Event):void
{
	trace("загрузился");
	xmlData = XML(e.target.data);
	trace(xmlData);
	xmlList = xmlData.children();
	trace(xmlList);
 
 
	for (var i:int=0; i<xmlList.length(); i++)
	{
		var picLoader:Loader = new Loader();
		picLoader.load(new URLRequest(xmlList[i].attributes()[1]));
		picLoader.x = 0;
		picLoader.y = 0;
		addChild(picLoader);
	}
}
Я был практически уверен, что всё написал правильно, но выскакивает ошибка:
Код:
TypeError: Error #2007: Parameter url must be non-null.
	at flash.display::Loader/_load()
	at flash.display::Loader/load()
	at album_fla::MainTimeline/getXML()
	at flash.events::EventDispatcher/dispatchEventFunction()
	at flash.events::EventDispatcher/dispatchEvent()
	at flash.net::URLLoader/onComplete()
Подскажите, пожалуйста, где я ошибся, и как исправить, если можно...
__________________
Учить Flash начал, когда мне стукнуло 50. И не жалею!

Старый 13.12.2017, 16:08
undefined вне форума Посмотреть профиль Отправить личное сообщение для undefined Найти все сообщения от undefined
  № 2  
Ответить с цитированием
undefined

Регистрация: Oct 2006
Сообщений: 2,281
а если положить xml рядом с флэшкой и заменить путь на просто
Код AS3:
var xmlLoader:URLLoader = new URLLoader(new URLRequest("my.xml"));
?

Старый 13.12.2017, 16:17
Comer вне форума Посмотреть профиль Отправить личное сообщение для Comer Найти все сообщения от Comer
  № 3  
Ответить с цитированием
Comer

Регистрация: Dec 2010
Сообщений: 121
Цитата:
Сообщение от undefined Посмотреть сообщение
а если положить xml рядом с флэшкой и заменить путь на просто
Код AS3:
var xmlLoader:URLLoader = new URLLoader(new URLRequest("my.xml"));
?
Нет, тоже не получается.
Дело в том, что до строки for (var i:int=0; i<xmlList.length(); i++) всё работает нормально, и в трейсе показывает как надо. Ошибка в последнем коде, определяющим цикл. Вот здесь:
Код:
for (var i:int=0; i<xmlList.length(); i++)
	{
		var picLoader:Loader = new Loader();
		picLoader.load(new URLRequest(xmlList[i].attributes()[1]));
		picLoader.x = 0;
		picLoader.y = 0;
		addChild(picLoader);
	}
__________________
Учить Flash начал, когда мне стукнуло 50. И не жалею!

Старый 13.12.2017, 16:24
undefined вне форума Посмотреть профиль Отправить личное сообщение для undefined Найти все сообщения от undefined
  № 4  
Ответить с цитированием
undefined

Регистрация: Oct 2006
Сообщений: 2,281
а, там еще внутри загрузка, ну очевидно же что xmlList[i].attributes()[1] равен null,на то и ругаются

Старый 13.12.2017, 16:27
Comer вне форума Посмотреть профиль Отправить личное сообщение для Comer Найти все сообщения от Comer
  № 5  
Ответить с цитированием
Comer

Регистрация: Dec 2010
Сообщений: 121
Цитата:
Сообщение от undefined Посмотреть сообщение
а, там еще внутри загрузка, ну очевидно же что xmlList[i].attributes()[1] равен null,на то и ругаются
Ну да, там внутри xml прелоадер, чтобы была видна загрузка картинок. Так это из-за него?
__________________
Учить Flash начал, когда мне стукнуло 50. И не жалею!

Старый 13.12.2017, 16:31
ZergMaster вне форума Посмотреть профиль Отправить личное сообщение для ZergMaster Найти все сообщения от ZergMaster
  № 6  
Ответить с цитированием
ZergMaster
 
Аватар для ZergMaster

Регистрация: May 2008
Адрес: Питер
Сообщений: 385
Отправить сообщение для ZergMaster с помощью ICQ Отправить сообщение для ZergMaster с помощью Skype™
Цитата:
там внутри xml прелоадер
нет, там внутри null, написано же)

Код:
TypeError: Error #2007: Parameter url must be non-null.
Loader не может загрузить null

если сделать
Код AS3:
for (var i:int=0; i<xmlList.length(); i++)
	{
		var picLoader:Loader = new Loader();
 
                trace('xmlList['+i+'].attributes()[1] = '+xmlList[i].attributes()[1]);
 
		picLoader.load(new URLRequest(xmlList[i].attributes()[1]));
		picLoader.x = 0;
		picLoader.y = 0;
		addChild(picLoader);
	}
, то перед ошибкой вы увидите null в трэйсе
__________________
while(live()) { hope(); }

Старый 13.12.2017, 16:33
undefined вне форума Посмотреть профиль Отправить личное сообщение для undefined Найти все сообщения от undefined
  № 7  
Ответить с цитированием
undefined

Регистрация: Oct 2006
Сообщений: 2,281
Цитата:
Parameter url must be non-null
Что переводится как "параметр url не может быть null".XML, очевидно, грузится без проблем,значит проблема не в нем.

Старый 13.12.2017, 16:38
Comer вне форума Посмотреть профиль Отправить личное сообщение для Comer Найти все сообщения от Comer
  № 8  
Ответить с цитированием
Comer

Регистрация: Dec 2010
Сообщений: 121
Цитата:
Сообщение от undefined Посмотреть сообщение
значит проблема не в нем.
на всякий случай попробовал убрать прелоадер из xml. Всё равно выдаёт ту же ошибку.
__________________
Учить Flash начал, когда мне стукнуло 50. И не жалею!

Старый 13.12.2017, 16:40
undefined вне форума Посмотреть профиль Отправить личное сообщение для undefined Найти все сообщения от undefined
  № 9  
Ответить с цитированием
undefined

Регистрация: Oct 2006
Сообщений: 2,281
код с убранным прелодером плз

Старый 13.12.2017, 16:43
Comer вне форума Посмотреть профиль Отправить личное сообщение для Comer Найти все сообщения от Comer
  № 10  
Ответить с цитированием
Comer

Регистрация: Dec 2010
Сообщений: 121
Цитата:
Сообщение от undefined Посмотреть сообщение
код с убранным прелодером плз
Здесь весь код xml-файла. С прелоадером. Код прелоадера
Код:
<usePreloader> true </usePreloader>
Код AS3:
<?xml version="1.0" encoding="windows-1251"?>
<FlippingBook>  
        <width>964</width>  
        <height>700</height>  
        <firstPage>0</firstPage>  
        <alwaysOpened> false </alwaysOpened>  
        <autoFlip> 200 </autoFlip>  
        <flipOnClick> true </flipOnClick>  
        <shadowsDepth> 1 </shadowsDepth>  
        <moveSpeed> 5 </moveSpeed>  
        <closeSpeed> 3 </closeSpeed>  
        <gotoSpeed> 3 </gotoSpeed>  
        <flipSound> mp3/01.mp3 </flipSound>  
        <pageBack> 0xB4DBF5 </pageBack>  
        <loadOnDemand> true </loadOnDemand>  
        <cachePages> true </cachePages>  
        <usePreloader> true </usePreloader>  
        <pages>  
			<page>img/00.jpg</page>  
            <page>img/01.jpg</page>  
            <page>img/02.jpg</page>  
            <page>img/03.jpg</page>  
            <page>img/04.jpg</page>  
            <page>img/05.jpg</page>  
            <page>img/06.jpg</page> 
			<page>img/08.jpg</page> 
			<page>img/09.jpg</page>
			<page>img/07_1.jpg</page> 
			<page>img/07_2.jpg</page>
			<page>img/11_1.jpg</page>
			<page>img/11_2.jpg</page>   
			<page>img/12_1.jpg</page>   
			<page>img/12_2.jpg</page>  
			<page>img/10.jpg</page> 
        </pages>  
</FlippingBook>
__________________
Учить Flash начал, когда мне стукнуло 50. И не жалею!

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

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

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


 


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


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