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

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

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

Регистрация: Dec 2009
Сообщений: 16
Question подгрузка сложной *.swf

с помощью load(); подгружаю на основную сцену внешнюю *.swf
если *.swf простая, то всё подгружается нормально
в моём случае подгружаемая *.swf является интерактивной панорамой, которая в свою очередь берёт данный из *.xml и из папки содержащей саму картинку панорамы - и в этом случае *.swf на основной сцене не появляется
как быть?

Код AS3:
package{	
	import flash.display.*;
	import flash.events.*;
	import flash.net.*;
	public class experiment1 extends MovieClip{	
		private var loader:Loader;
		private var urlReq:URLRequest;
		private var zal:Object;
		public function startExperiment(){
			loader = new Loader();
			urlReq = new URLRequest("zal00.swf");
			loader.load(urlReq);
			loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loadComplete);
			addChild(loader);			
		}
		private function loadComplete(evt:Event):void {
			zal = loader.content;
		}
	}	
}
из-за панорамы архив тяжёлый получился - 8 Мб
experiment.rar

Старый 03.04.2011, 14:24
goodguy вне форума Посмотреть профиль Найти все сообщения от goodguy
  № 2  
Ответить с цитированием
goodguy
Banned
[+1 05.11.11]
[+1 09.08.11]

Регистрация: Jan 2010
Адрес: РФ. Кемеровская область
Сообщений: 3,243
Код AS3:
Security.allowDomain("здесь нужный домен")
Это добавить в главный класс подкгружаемой swf + файл кроссдоменной политики в корень сервера, с которого грузятся данные

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

Регистрация: Dec 2009
Сообщений: 16
всё грузится локально. стоит ли указать root?
как-то так:
Код AS3:
public class experiment1 extends MovieClip{	
	private var loader:Loader;
	private var urlReq:URLRequest;
	private var zal:Object;
	public function startExperiment(){
		Security.allowDomain(this.root);
		loader = new Loader();
		urlReq = new URLRequest("zal00.swf");
		loader.load(urlReq);
		loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loadComplete);
		addChild(loader);	
		}
}
но это тоже не работает.

Старый 03.04.2011, 17:59
goodguy вне форума Посмотреть профиль Найти все сообщения от goodguy
  № 4  
Ответить с цитированием
goodguy
Banned
[+1 05.11.11]
[+1 09.08.11]

Регистрация: Jan 2010
Адрес: РФ. Кемеровская область
Сообщений: 3,243
Какой еще root? Root в данном случае скорее всего = stage.
Сюда надо указывать домен, на котором запущена флешка. Для запуска из конакта я добавлял "vkontakte.ru"
Советую почитать оф документацию

Старый 03.04.2011, 19:38
kmkdz09 вне форума Посмотреть профиль Отправить личное сообщение для kmkdz09 Найти все сообщения от kmkdz09
  № 5  
Ответить с цитированием
kmkdz09

Регистрация: Dec 2009
Сообщений: 16
я же написал, что всё локально
домена нет, будет запускаться с диска.
я документацию почитал
http://help.adobe.com/ru_RU/FlashPla...filter_air=2.6
там упоминаеться
Security.allowDomain(this.root.loaderInfo.loaderURL)
подумал его как-то преобразовать. видимо не правильно.

Старый 03.04.2011, 21:15
goodguy вне форума Посмотреть профиль Найти все сообщения от goodguy
  № 6  
Ответить с цитированием
goodguy
Banned
[+1 05.11.11]
[+1 09.08.11]

Регистрация: Jan 2010
Адрес: РФ. Кемеровская область
Сообщений: 3,243
Если запуск окальный, то домен localhost или 127.0.0.1
Не может быть, чтобы домена не было

Старый 03.04.2011, 21:23
kmkdz09 вне форума Посмотреть профиль Отправить личное сообщение для kmkdz09 Найти все сообщения от kmkdz09
  № 7  
Ответить с цитированием
kmkdz09

Регистрация: Dec 2009
Сообщений: 16
не работает

Код AS3:
package{	
	import flash.display.*;
	import flash.events.*;
	import flash.net.*;
	import flash.system.Security;
	public class experiment1 extends MovieClip{	
		private var loader:Loader;
		private var urlReq:URLRequest;
		private var zal:Object;
		public function startExperiment(){
			Security.allowDomain("localhost")
			loader = new Loader();
			urlReq = new URLRequest("zal00.swf");
			loader.load(urlReq);
			loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loadComplete);
			addChild(loader);			
		}
		private function loadComplete(evt:Event):void {
			zal = loader.content;
		}
	}	
}
а что забавное, внутри *.swf есть trace(); функция, и она себя проявляет. из чего я делаю вывод, что флешка грузиться, а вот файлы-панорамы в подгруженную флешку - нет!


Последний раз редактировалось kmkdz09; 03.04.2011 в 21:31.
Старый 03.04.2011, 21:26
goodguy вне форума Посмотреть профиль Найти все сообщения от goodguy
  № 8  
Ответить с цитированием
goodguy
Banned
[+1 05.11.11]
[+1 09.08.11]

Регистрация: Jan 2010
Адрес: РФ. Кемеровская область
Сообщений: 3,243
очевидно из-за отсутствия э того:
Код AS3:
import flash.system.Security;
Но и после добавления эта конструкция не будет работать.
Что-то мне подсказывает, что там сам файл какой-то неправильный. Из той же папки, где лежит основной файл вообще должно все работать без ограничений
А если уж добавлять эту строку, то не в загружающий файл, а в загружаемый.


Последний раз редактировалось goodguy; 03.04.2011 в 21:29.
Старый 03.04.2011, 22:09
teion вне форума Посмотреть профиль Отправить личное сообщение для teion Найти все сообщения от teion
  № 9  
Ответить с цитированием
teion

Регистрация: Mar 2011
Сообщений: 72
часто бывает так, что при подгрузке внешней свф в основную, эта свф теряет пути ко всяким ресурам.. попробуйте прописать пути к ресурсам относительно главной флешки

Старый 03.04.2011, 23:34
kmkdz09 вне форума Посмотреть профиль Отправить личное сообщение для kmkdz09 Найти все сообщения от kmkdz09
  № 10  
Ответить с цитированием
kmkdz09

Регистрация: Dec 2009
Сообщений: 16
суть в том, что подгружаемая *.swf была создана какой-то фотографической программкой и исходника для неё нет. а при декомпилировании она безвозвратно ломается.
так что в ней прописать пути не получится.
оба файла и основная *.fla и подгружаемая *.swf находятся в одной и той же папке и по сути пути не должны нарушаться.
отдельно подгружаемая *.swf работает.
в основной *.fla подгружаемая *.swf подгружается.
а вот всё остальное...
как и где прописать пути я не уразумею к сожалению.
в *.xml? так там вроде нечего менять, если оба файла в одной папке. или как-то всё-таки надо?

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

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

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


 


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


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