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

Вернуться   Форум Flasher.ru > Flash > Общие вопросы о Flash (не затрагивающие ActionScript)

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

Регистрация: Sep 2003
Адрес: Czech
Сообщений: 19
По умолчанию XML > Flash позиционирование изображений

Добрый день.

Есть файл XML, через который во Flash ролик подгружаются картинки со ссылками

код такой
Код:
<logo url="resources/tvnovosedlice.png" position="right middle" link="http://ya.ru" linktarget="_blank"/>
но как явно указать расположение картинок? Чтобы можно было их расположить не только по углам и центру.

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

Регистрация: Oct 2006
Сообщений: 2,281
это вопрос к тому,кто парсит эти xml и какие возможные значения position поддерживает.Или подгрузка идет не в флэш ролик, а в flash ide?

Старый 29.06.2017, 21:38
Deoni вне форума Посмотреть профиль Отправить личное сообщение для Deoni Посетить домашнюю страницу Deoni Найти все сообщения от Deoni
  № 3  
Ответить с цитированием
Deoni

Регистрация: Sep 2003
Адрес: Czech
Сообщений: 19
Хмм.. не знаю... в какую сторону хоть начинать копать, чтобы выяснить этот вопрос?
Есть один swf и несколько папок с файлами as. Где смотреть?

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

блогер
Регистрация: Jul 2013
Адрес: Север
Сообщений: 1,918
Записей в блоге: 23
Отправить сообщение для ZackMercury с помощью ICQ Отправить сообщение для ZackMercury с помощью Skype™
В файлах .as искать место, где разбирается XML и на какие куски оно разбирает атрибут position.
__________________
There is no thing in this world that is not simple.

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

Регистрация: Oct 2006
Сообщений: 2,281
Поищи в as файлах где встречается строка "right middle" где-то рядом должны быть и другие допустимые значения

Старый 01.07.2017, 21:48
Deoni вне форума Посмотреть профиль Отправить личное сообщение для Deoni Посетить домашнюю страницу Deoni Найти все сообщения от Deoni
  № 6  
Ответить с цитированием
Deoni

Регистрация: Sep 2003
Адрес: Czech
Сообщений: 19
спасибо за советы, нашел и почти получилось сделать, за исключением того, что теперь позиционировние задается только жестко через x y, а нужно, чтобы по горизонтали была относительная привязка right, а по вертикали уже устанавливалась вручную через XML.

нашел код в двух файлах, которые отвечают за парсинг и за отрисовку самого логотипа
код в них такой

в файле XMLLoader.as

Код:
...............

case "logo":
                              this.interfaceOptions.logos.push({
                                 "url":"",
                                 "position":[1,1],
                                 "link":"",
                                 "target":"_self"
                              });

..................

if(interfaceNode.childNodes[ii].attributes["position"] != undefined)
                              {
                                 Pos = [0,0];
                                 if(interfaceNode.childNodes[ii].attributes["position"].toLowerCase().search("left") >= 0)
                                 {
                                    Pos[0] = 0;
                                 }
                                 if(interfaceNode.childNodes[ii].attributes["position"].toLowerCase().search("center") >= 0)
                                 {
                                    Pos[0] = 1;
                                 }
                                 if(interfaceNode.childNodes[ii].attributes["position"].toLowerCase().search("right") >= 0)
                                 {
                                    Pos[0] = 2;
                                 }
                                 if(interfaceNode.childNodes[ii].attributes["position"].toLowerCase().search("top") >= 0)
                                 {
                                    Pos[1] = 0;
                                 }
                                 if(interfaceNode.childNodes[ii].attributes["position"].toLowerCase().search("middle") >= 0)
                                 {
                                    Pos[1] = 1;
                                 }
                                 if(interfaceNode.childNodes[ii].attributes["position"].toLowerCase().search("bottom") >= 0)
                                 {
                                    Pos[1] = 2;
                                 }
/*старый код
this.interfaceOptions.logos[this.interfaceOptions.logos.length - 1].position = [Pos[0],Pos[1]];
*/
//новый код
                                 this.interfaceOptions.logos[this.interfaceOptions.logos.length - 1].position = [Pos[0],interfaceNode.childNodes[ii].attributes["yposition"]];
........................................
в файле Logo.as

Код:
...................
 public class Logo extends MovieClip
   {
       
      
      private var _position:Array;
	   
     
      private var _link:String;
      
      private var _target:String;
      
      private var _logoLoader:Loader;
      
      private var _logoLoaderContext:LoaderContext;
      
      public var loaded:Boolean = false;
      
      private var mainApplication;
      
      public function Logo(param1:String, param2:Array = null, param3:String = "", param4:String = "")
      {
         super();
         this.mainApplication = DigitalBrochure.getInstance();
         this._link = param3;
         this._target = param4;
         if(param2 == null)
         {
            this._position = [1,1];
         }
         else
         {
			/*старый код
                        this._position =param2;
                         */
		//новый код
			 this.x = 800;
			 this.y = param2[1]
			 
			 
         }
.............
в файле Settings.xml

Код:
<logo url="resources/link_1.png" position="right" link="link_1" linktarget="_blank" yposition="50" />
<logo url="resources/link_2.png" position="right" link="link_2" linktarget="_blank" yposition="100" />
<logo url="resources/link_3.png" position="right" link="link_3" linktarget="_blank" yposition="150" />
<logo url="resources/link_4.png" position="right" link="link_4" linktarget="_blank" yposition="200" />

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

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

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


 


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


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