![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Jul 2006
Сообщений: 54
|
У меня проект(система администрирования) состоит из большого количества файлов SWF. Есть главный файл SWF-mainmenu.swf, где находится главное меню. При выборе пункта меню в главный файл подгружаются другие флешки.
В одной флешке(monitoringUniversal.swf) нужно было использовать дополнительную библиотеку flexlib. Подключил и откомпилировал. Что бы заработало пришлось подключать и к главной флешке(mainmenu.swf) эту библиотеку, по другому отказывалось работать. После подключения к mainmenu.swf во всех остальных флешках(которые грузятся в нее) перестал правильно работать центрирование вложенных окон(PopUpManager.centerPopUp(this); ). Структура проекта: -mainmenu.swf(Чтобы заработал flexlib в monitoringUniversal.swf пришлось подключить flexlib и сюда) --monitoringUniversal.swf(Тут использовал flexlib) --p1.swf(перестало корректно работать центрирование вложенных окон) --p2.swf(перестало корректно работать центрирование вложенных окон) --p3.swf(перестало корректно работать центрирование вложенных окон) --p4.swf(перестало корректно работать центрирование вложенных окон) --p5.swf(перестало корректно работать центрирование вложенных окон) 1)Что там может конфликтовать и как решить проблему. Может как то пути прописать? 2)Почему в monitoringUniversal.swf не работают компоненты flexlib, до тех пор пока я библиотеку не подключу в mainmenu.swf? |
|
|||||
|
Modus ponens
|
"Только ветер вам на это ответит" (цитата из какой-то песни
)в этой библиотеке куча всего, и никто не знает, что именно вы от туда использовали, да и качество этой библиотеки весьма сомнительно даже по сравнению с флексовым фреймворком в целом... Почему так подключается - компилируйте с -link-report и смотрите кто и от чего зависит... дело это не легкое, но вряд ли вам кто-то что-то более внятное посоветует.
__________________
Hell is the possibility of sanity |
|
|||||
|
Регистрация: Jul 2006
Сообщений: 54
|
Цитата:
![]() Но почему все таки обязательео нужно подключать библиотеку к главному файлу, хоть она там вообще не используется? По другому в подгружаемой флешке отказывается работать(отя там библиотека тоже подключена). Это как то можно обойти, чтобы подключить только к подгружаемой флешке?Тогда проблема отпадёт сама собой. ![]() Последний раз редактировалось MedvedevA; 09.07.2010 в 16:57. |
|
|||||
|
Modus ponens
|
Цитата:
Цитата:
__________________
Hell is the possibility of sanity |
|
|||||
|
Регистрация: Jun 2010
Адрес: Беларусь, Гродно
Сообщений: 58
|
Вопрос, ты скомпиленную либу как подключаешь?
1. merge into code 2. external library 3. RSL ? |
|
|||||
|
Регистрация: Jul 2006
Сообщений: 54
|
Пробовал merge into code и RSL.
|
|
|||||
|
Регистрация: Jun 2010
Адрес: Беларусь, Гродно
Сообщений: 58
|
Если ты пробовал merge into code, то у тебя будет проблема в 99% случаев.
Допустим у тебя есть 2 swf и в каждой стоит merge into code. В таком случае один и тот же класс будет вкомпиливаться в каждую swf. Это и преведет потом к ошибке что класс не совпадает сам с собой (на самом деле это 2 инстанса одного класса). Если же ты в обоих (именно в обоих) случаях используеь RSL то проблем не будет, т.е. классы вообще вкомпиливаться не будут и на рантайме при попытке обратиться к данному классу плеер просто подгрузит RSL по указанному адрессу и поднимит класс. Если же ты в одной swf укажешь merge into code, а во второй RSL. То проблема опять же будет (см абзац выше). Ты уверен что ты везде пробовал RSL? И что дебаг говорит? В трейсе есть какие-нибудь ошибки... Они должны быть. |
|
|||||
|
Регистрация: Jul 2006
Сообщений: 54
|
Цитата:
Проблема только в том что перестало корретно работать функция PopUpManager.centerPopUp(this); Других проблем вообще нету. Тут большой проект и много вложенных окон. И даже такая мелочь это не очень хорошо. Других проблем кроме не правильной работы centerPopUp во всем большом проекте нету. Обнаружил такую вещь. Так как определение centerPopUp находится в классе sdks\3.0.0\frameworks\projects\framework\src\mx\managers\PopUpManagerImpl.as вместо библиотеке framework.swc подключил исходники sdks\3.0.0\frameworks\projects\framework\ по методу http://www.brightworks.com/flex_ability/?p=99 И функция centerPopUp нормально заработала вместе с Flexlib. Как с таким бороться вообще не понимаю. Не успевает что инициализироваться?! Может кто-нибудь зацепку подскажет какую-нибудь? Последний раз редактировалось MedvedevA; 13.07.2010 в 13:42. |
|
|||||
|
Регистрация: Jun 2010
Адрес: Беларусь, Гродно
Сообщений: 58
|
Судя по тому что ты написал, проблемы с flexlib нет, тк у тебя всё грузить и показывается.
this - это что? Это должен быть контейнер относительно которого центрировать. |
![]() |
![]() |
Часовой пояс GMT +4, время: 22:59. |
|
|
« Предыдущая тема | Следующая тема » |
|
|