Просмотр полной версии : MovieClip id
Здравствуйте. Если мувиклипам не задан linkage id, как можно понять что перед нами интстансы одного и того же мувика?
Инстансы могут быть расположены на разных уровнях вложенности, иметь разные имена, иметь разные параметры трасформа.
Кроме кол-ва кадров не вижу постоянных атрибутов, но это, конечно, довольно не уникальный ключ.
Переменную в мувике создавать — не айс.
Подскажите направление, пожалуйста.
Vansimar
11.10.2011, 21:25
если правильно тебя понял , то можно создать массив из объектов- мувиков,а потом обращаться к ним по индексам
Доступ к клипу можно получить через DisplayObjectContainer#getChildAt и иже с ним. Естественно, что класс у них должен быть одинаков. В таком случае строчка
if (getChildAt(2) is MyClass && getChildAt(4) is MyClass)
даст true.
getQualifiedClassName( твой_клип ) даст имя класса. Сравнивая имена можно установить идентичность.
А что такое linkage id ?
Linkage id задаётся в свойствах объектов в библиотеке. линкейдж как раз и задаёт классы мувика.
Еслиб каждый мувик в библе имел свой класс, то простой .toString() (выдайт [object имя_класса]) позволил бы понять, то это инстансы одного мувика. Но мне надо проверять инстансы мувиков, которые не имеют своего линкейдж-ид.
Флешки - это некие баннеры, они создаются не мной - там всё проанимировано на таймлайне, достаточно грубо.
И один и тот же мувик может по ходу анимации пропасть и появиться на таймлайне, для флеша это новый объект, а мне нужно знать что он тот же, что и был уже.
если Linkage id не задан (т.е. не задан собственный класс клипов), то все они будут MovieClip и различить их по конструктору не получится
Да, спасибо, это подразумевалось ещ в первом посте.
Только у меня вдруг флеш начал вести себя, так как мне нужно. Если раньше вспомогательные мувики на toString() выдавали [object Object], то теперь [object имя_мувика_в_библиотеке_номер].
Один и тот же мувик выдаёт стабильно одно и то же значение, сколько бы раз он не появился на таймлайне, и куда бы я его не вложил в другие мувики.
Не понимаю почему так произошло. Но даже после перезапуска флеша, выдаёт стабильно то, что нужно.
Буду надеяться результат будет постоянно таким.
Спасибо всем.
Ну если вдруг перестанет работать, сравнивай скрины серединных кадров попиксельно (естественно сначала сделав масштабирование, чтобы размер совпал). Я думаю это самое надёжное будет.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.