Shape, Sprite, MovieClip и другие объекты отображения: когда использовать?

в пакете flash.display большое количество объектов отображения. Мне непонятно, в какой ситуации использовать Shape, Sprite или MovieClip. Каковы плюсы и минусы использования каждого из них?

Заранее спасибо!!


person Eugeny89    schedule 17.04.2012    source источник


Ответы (2)


  • Фигура — это простейший экранный объект, который можно добавить на сцену. Это самый ограниченный: вы не можете добавить к нему дочерние элементы (не расширяет DisplayObjectContainer), не имеет интерактивности (не расширяет InteractiveObject), не имеет временной шкалы.
  • Sprite расширяет DisplayObjectContainer и InteractiveObject, поэтому он интерактивен, и вы можете добавить к нему детей. На мой взгляд, это самый полезный класс отображения, если вам не нужна временная шкала.
  • MovieClip расширяет Sprite, поэтому все вышеперечисленное верно, и вы также получаете методы/свойства, связанные с управлением временной шкалой, но обратите внимание, что это динамический класс, так что вы можете делать какие-то хакерские вещи на лету, но вы потеряете скорость.

Короче говоря, в большинстве случаев придерживайтесь Sprite, если только вам не нужно интегрироваться с MovieClips из Flash Authoring. Форма удобна для быстрого рисования, она «легче», чем Sprite, но не очень гибкая, поскольку вы не можете вкладывать в нее другие элементы.

person George Profenza    schedule 17.04.2012

Вы всегда должны использовать самый легкий компонент в зависимости от того, что вам нужно:

  • Shape имеет наименьшие возможности. Используйте его, когда вам нужно только DisplayObject с graphics и без взаимодействия с мышью.
  • Sprite — это родительский класс всего, что вам нужно. Поскольку это DisplayObjectContainer, вы можете использовать его как базовый контейнер для других компонентов. Вы также можете поймать события мыши на этом.
  • MovieClip — это Sprite с возможностью использования фреймов. Используйте его только для покадровой анимации (стиль Flash).
person Kodiak    schedule 17.04.2012