Как избежать компиляции CSS в SWF в Flex

#apache-flex #flex4

#apache-flex #flex4

Вопрос:

Кажется, что во время выполнения невозможно изменить стиль, определенный в файлах CSS, например.: цвета. Это, по-видимому, потому, что файлы CSS скомпилированы в SWF.

Возможно ли экстернализировать информацию о стиле в CSS (или любом другом формате) без компиляции в SWF-файл, чтобы ее можно было легко изменять во время выполнения так же, как обычный CSS может быть изменен, когда он используется в HTML.

Ответ №1:

Вы можете сделать это в Flex 3, загрузив внешний файл CSS, и надеется, что аналогично можно использовать для Flex 4 как

  • Загрузите файл CSS с помощью URLLoader

  • Элемент списка Проанализируйте с помощью функции таблицы стилей parseCSS

  • Назначьте его приложению

Также смотрите Таблицу стилей

Надеется, что это поможет

Ответ №2:

В конечном итоге мы нашли способ применения стиля без выполнения этапа компиляции. Мы придерживаемся основ.

Мы определили конфигурационный XML-файл и, используя onPre метод mx:application , прочитали этот XML-файл и применили стиль к компонентам пользовательского интерфейса.

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

Ответ №3:

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