(извиняюсь заранее, я действительно знаю только Flash; мой опыт работы с Flex практически нулевой. Может быть очень стандартное и очевидное решение для рабочего процесса, о котором знают пользователи Flex)
У меня есть несколько элементов пользовательского интерфейса, которые графически довольно сложны (они не компоненты, а просто спрайты). Поскольку их компиляция занимает много времени, я пытался переместить их во внешний .swc. Однако я хочу связать некоторый код с этими классами, но мне не нужно перекомпилировать графические ресурсы каждый раз, когда я изменяю код.
На данный момент я настроил его так: элементы пользовательского интерфейса создаются в отдельном FLA и экспортируются в SWC. В моем основном FLA у меня есть классы ActionScript, которые расширяют каждый графический актив в SWC. Например:
external.swc:
(some symbol defined in the Library and exported for actionscript in frame 1)
class: com.foo.WidgetGraphic
base: flash.display.Sprite
main.fla:
Widget.as:
package com.foo {
public class Widget extends WidgetGraphic {
...
}
}
Это работает, но отнимает много времени и подвержено ошибкам. Я предпочел бы избежать необходимости наследовать от каждого графического актива и просто определять их напрямую. Есть ли лучший способ сделать то, что я пытаюсь сделать?
Примечание: главная проблема здесь - время компиляции. У меня нет ни фильмов, ни аудиозаписей, ни шрифтов, просто множество векторных изображений, которые, по-видимому, значительно замедляют время моей компиляции. Когда я отлаживаю, я только делаю изменения в коде, и, скорее всего, не нужно будет перекомпилировать рисунок ...