Я пытаюсь понять, почему я получаю сообщение об ошибке при использовании chromeColor (или других элементов, связанных со стилем искры):

            <s:Button x="10" y="208" label="CALL" width="185" fontWeight="bold" id="bCall" chromeColor="#F90000"/>

Это ошибка:

The style 'chromeColor' is only supported by type 'spark.components.Button' with the theme(s) 'spark'.

Тем не менее, в свойствах проекта задана тема Spark. Я также попытался установить его на Halo, а затем снова на Spark.

Вот определение моего приложения:

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
            xmlns:s="library://ns.adobe.com/flex/spark" 
            xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="800" minHeight="600" width="100%" height="100%">

Я видел ссылки, которые определяют пространство имен mx как "xmlns: mx =" library: //ns.adobe.com/flex/halo ", но затем мои компоненты mx ломаются (например, TabNavigator) - не уверен, что это исправит заранее.

Я использую библиотеку flex 4.1 (я считаю, что проект был изначально создан, когда flex builder был на 4.0, если это важно). Никаких других библиотек не включено. Проект - в свойствах установлено значение MX + Spark.

Кроме того, если я удалю этот chromeColor, проект компилируется, НО есть такие предупреждения, как:

The style 'borderAlpha' is only supported by type 'spark.components.TitleWindow' with the theme(s) 'spark'. Flex Problem

(и другие - borderColor, cornerRadius, dropShadowVisible)

2
Scott Szretter 2 Май 2011 в 21:01

2 ответа

Лучший ответ

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

2
Scott Szretter 6 Май 2011 в 16:37
2
Не могли бы вы подробнее остановиться на этом? Похоже, что в данный момент у меня есть связанная с этим проблема в моем коде ... xkcd.com/979
 – 
finalman
26 Окт 2012 в 18:09

Я вижу две проблемы:

  1. chromeColor не является документированным стиль класса Button.

  2. borderAlpha не является документированным стилем titleWindow класс.

    Ошибка, которую вы видите, конечно, вводит в заблуждение, но почему вы думаете, что можете использовать эти стили?

«Правильный» способ изменить альфа-канал границы в titleWindow - создать собственный скин. Я предполагаю, что то же самое верно и для chromeColor [но для меня не очевидно, что он должен делать].

0
Community 20 Июн 2020 в 12:12
Более того, я не писал никакого кода для стилизации titleWindow! Предупреждения появляются в строках с номерами, превышающими количество строк кода в моем приложении! Что касается chromeColor на кнопке, я опять же не набирал его - Flex Builder генерировал его, когда я нажимал кнопку в представлении «Дизайн» и использовал палитру цветов, чтобы изменить цвет кнопки.
 – 
Scott Szretter
4 Май 2011 в 15:05