|
|
|||||
Регистрация: Jan 2010
Сообщений: 15
|
Дружба AS3 c кадрами
Доброго времени суток, уважаемые знатоки!
На днях столкнулся с удручающим нонсенсом, так до конца и не поняв баг это или нет... Суть нонсенса вот в чём... 1) Создадим новый проект AS3 2) Создадим в библиотеке 5 символов-мувиклипов с идентификаторами экспорта: Test, a1, b1, c1, d1 3) Поместим символы с ид. а1 и с1 на 1ый кадр Тест, а с1 и д1 на 2ой кадр 4) Напишем на временной шкале следующий код: var mc:MovieClip = new Test(); addChild(mc); mc.gotoAndStop(1); trace(mc.getChildByName("a")); // Выдает [object a1]... trace(mc.getChildByName("b")); // Выдает [object b1]... mc.gotoAndStop(2); trace(mc.getChildByName("c")); // Выдает null... trace(mc.getChildByName("d")); // Выдает null Если для кого не понятно: После смены кадра в родитесльком мувиклипе все дочерние объекты становятся недоступны, мало того: var mc:MovieClip = new Test(); addChild(mc); mc.gotoAndStop(1); trace(mc.getChildByName("a")); // Выдает [object a1]... trace(mc.getChildByName("b")); // Выдает [object b1]... mc.gotoAndStop(2); trace(mc.getChildByName("c")); // Выдает null... trace(mc.getChildByName("d")); // Выдает null mc.gotoAndStop(1); trace(mc.getChildByName("a")); // Выдает null trace(mc.getChildByName("b")); // Выдает null Выводит мифическое число 3, вместо 4ех реальных потомков, или хотябы 2ух (на 1ом или на 2ом кадре ), кто нибудь замечал подобное или хотябы догадывается с чем это связано? Ведь в АС2 никаких проблем с этим не было, все было предельно просто. Сменил кадр > обратился к содержимому.. а тут... такое.. Неужели АС 3 после ввода спрайтового класса настолько возненавидел кадры, что теперь придется вовсе исключить их из инструментов разработки? З.Ы. К посту прилеплен Исходник с готовым содержимым , можете сами проверить и убедится |
|
|||||
Modus ponens
|
Нужно ждать enterFrame - да, баг извесный, в десятом плеере вроде что-то исправили. Ну не пишите код на временной шкале, она для анимации, в AS3 код пишут в классах.
__________________
Hell is the possibility of sanity |
|
|||||
Регистрация: May 2003
Адрес: Tallinn
Сообщений: 3,181
|
ну правильно...спрайты и мувиклипы не сразу инициализируются
Добавлено через 3 минуты Цитата:
Ну а если вообще, то лучше не использовать фреймы... Последний раз редактировалось CrazyFlasher; 16.02.2010 в 13:34. |
|
|||||
Регистрация: Jan 2010
Сообщений: 15
|
Огромное спасибо!! А то я уже огрочился, что придётся отказаться от использвования кадров.
З.Ы. Я написал код на таймлайне только для упрощения примера, конечно, я пишу всё в классах |
|
|||||
Регистрация: Feb 2010
Адрес: Донецк
Сообщений: 34
|
Я делал dispatchEvent из кадра и в обработчике уже обращался к клипам на кадре. Помогает, не знаю как при 150 клипах, но 5—10 работают.
|
Часовой пояс GMT +4, время: 00:56. |
|
« Предыдущая тема | Следующая тема » |
|
|