2009-11-30 12 views
0

В одном проекте у меня есть несколько подобных приложений, они немного отличаются друг от друга здесь и там. Как некоторые из содержащихся значков/изображений. Чтобы помочь организовать, я вижу себя [Вставить] иконки в стиле, как показано ниже, однако использование переменных в метатеге [Вставить] не работает. Этот код содержится в пользовательском компоненте, поэтому я легко могу установить различные значки для каждого приложения, включая компонент. Как мне обойти эту проблему?Flex внедряется динамически

public var iconBase:String = "/icons/red/"; 
[Embed(iconBase + "play.png")] [Bindable] public var icon_play:Class; 
[Embed(iconBase + "stop.png")] [Bindable] public var icon_stop:Class; 

ответ

0

У вас есть довольно много вариантов:

  1. Написать быстрый генератор кода для построить соответствующие исходные файлы.

  2. Загрузите значки во время выполнения, что способ изменить пути.

  3. Используйте символические ссылки для изменения, где извлекаются файлы значков .

  4. Сделайте библиотеку или модуль значков, и либо загрузите их во время компиляции, либо во время выполнения.

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

0

Один из вариантов - использовать ResourceManager и поместить в него заявления в файлы ресурсов. Различные приложения могут определять разные пакеты ресурсов.

1

Это должно ответить на ваш вопрос: Embedding sources dynamically.

Метаданные предварительно обработаны компилятором, поэтому у вас не может быть никаких переменных.

Надежда, что помогает, Lance

0

у мог бы использовать

btn.setStyle(“icon”,iconSymbol); 

это может помочь

Смежные вопросы