Во Flash лучше иметь несколько кадров или изменять свойства символов с помощью AS - PullRequest
0 голосов
/ 04 августа 2011

Например, если у вас есть активное состояние и пассивное состояние для чего-то, вы можете перейти между двумя с помощью gotoAndStop(2), gotoAndStop(1); или вы можете манипулировать любым изменяющимся свойством напрямую (например, если это альфа, то symb.alpha=0.5, symb.alpha = 1.0).

Я обнаружил, что прыгаю между двумя, и мне это не нравится (мне нравится иметь стандарт или, по крайней мере, обычный). Что считается хорошей практикой и почему?

Ответы [ 4 ]

1 голос
/ 04 августа 2011

Если вы используете AS2 с использованием фреймов и gotoandstop нормально, в AS3 вам действительно нужно оценить, будет ли это работать для вас.Для меня чаще всего минусы перевешивают плюсы, и поэтому я использую кадры экономно.

Большая разница между as2 и as3 заключается в том, что в as2 ресурсы доступны сразу.В AS3 ресурсы не могут быть доступны сразу после.

, например, если у вас есть мувиклип с именем _mc1 в кадре 3, в as2 вы можете сделать

mymc.gotoandstop(3);
mymc._mc1.visible = false;

в AS3, чтоне работает , вы получите ошибки, и вам нужно будет добавить слушатель onrender и добавить туда код. Это кошмар. .

Это не значит, что я не использую фреймы, например, когда я использую видеоклипы в качестве кнопок, у меня нет ресурсов, которые я могу использовать.Мне нужен доступ, и поэтому я не беспокоюсь об использовании фреймов.

Другая вещь, которую вы должны иметь в виду, это используемая память.Если у вас есть объекты, у которых есть прослушиватели или у которых есть дорогостоящее создание и удаление, то размещение этих объектов на временной шкале, на которую вы переходите вперед и назад, потребует больше памяти и обработки, чем если бы вы делали это с использованием чистого кода.

1 голос
/ 04 августа 2011

Я предпочитаю всегда делать это в коде, кроме случаев, когда я не могу.Любые анимации или другие изменения, сделанные в коде, почти всегда легче настроить позже, чем делать те же самые анимации на временной шкале (особенно когда вы используете что-то вроде TweenLite).И, конечно, таким образом, пользовательский интерфейс может управляться динамическими данными (например, эффект ролловера уникален для каждого пользователя в базе данных).

Ситуация «не могу» - это сложные изменения изображения, например лицаэто меняет выражение, когда мышь находится над ним.

Однако это зависит от рабочего процесса вашей студии;иногда дизайнеры настаивают на том, чтобы использовать свои графические ресурсы, а не рассматривать их как макеты для воссоздания в коде, и в этом случае я обычно не спорю.

0 голосов
/ 04 августа 2011

Я почти всегда использую gotoandstop способ ведения дел.Что касается меня, я всегда стараюсь уменьшить длину кода, и это позволяет мне это делать.

например, если я хочу многое сделать с анимацией, которую необходимо выполнить при переносе, это может занять 5-10 строк кода в зависимости от сложности.Если я могу сказать, что в пользу выполнения этого в сроки, я считаю, что мой код остается чище.

Я не уверен, есть ли лучший способ для этого, это может быть больше личного предпочтения, но яопределенно придерживался бы того, чтобы сделать это одним способом в течение всего проекта.

0 голосов
/ 04 августа 2011

Лично я всегда предпочитаю делать что-то исключительно с кодом, потому что я чувствую, что он дает вам больший контроль, и потому что код более самодокументирован, чем работа по времени.Я также считаю, что код легче переносится.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...