Связать код AS с символами, определенными во внешнем SWC? - PullRequest
0 голосов
/ 06 июня 2010

(извиняюсь заранее, я действительно знаю только 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 {
                ...
            }
        }

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

Примечание: главная проблема здесь - время компиляции. У меня нет ни фильмов, ни аудиозаписей, ни шрифтов, просто множество векторных изображений, которые, по-видимому, значительно замедляют время моей компиляции. Когда я отлаживаю, я только делаю изменения в коде, и, скорее всего, не нужно будет перекомпилировать рисунок ...

1 Ответ

0 голосов
/ 06 июня 2010

Попробуйте скомпилировать свой проект с помощью Flex SDK. Экспортируйте свою графику, шрифты, музыку и т. Д. В SWC и скомпилируйте свой проект с помощью Flex SDK. Если вы работаете в Windows, посмотрите FlashDevelop , это поможет вам начать создавать проекты с помощью Flex SDK.

...