Flex-4 Beta2: перестало работать фоновое изображение

После обновления проекта с Flex4 Beta1 до Beta2 я обнаружил, что стиль фонового изображения больше не поддерживается в компонентах Halo.

Eg:

<mx:VBox xmlns:mx="http://www.adobe.com/2006/mxml"
         backgroundImage="@Embed(source='myImage.png')" />

Обратите внимание, что проблема jira SDK-23050 указывает на следующее:

backgroundImage не поддерживается для тем оформления Spark.

Но здесь используется не скин Spark, а стандартный компонент Halo.

У кого-нибудь есть идеи?


person Marty Pitt    schedule 27.10.2009    source источник


Ответы (4)


<s:BorderContainer x="100" y="100" width="200" height="200"

                   backgroundImage="@Embed(source='image.jpg)" >
</s:BorderContainer>

Используйте приведенный выше код. Любая искра: BorderContainer имеет параметр backgroundImage, либо другие параметры backgroundImage. Добавьте изображение, которое вы хотите, в свой источник и поместите в image.jpg имя вашего изображения с его расширением. не забывайте одинарные кавычки.

person softwaremonster    schedule 26.06.2010
comment
cookbooks.adobe.com/ Вот ссылка на ваш вопрос. Свойство backgroundimage преобразуется в свойство -Skin [down, - up, - over, -] - person softwaremonster; 27.06.2010

Теперь вам нужно создать класс скина. Используйте VGroup и укажите индивидуальный скин.

person sharvey    schedule 27.10.2009

Компоненты MX в Flex 4 позволяют использовать оболочки Spark, а Adobe использует оболочки Spark по умолчанию, так что компоненты MX и Spark в одном приложении выглядят так, как будто они принадлежат друг другу. Очевидно, что скины Spark поддерживают другую функциональность, чем скины Halo, и теперь вы должны настроить скины, если хотите, чтобы они выглядели иначе (за исключением некоторых простых цветовых стилей). Учитывая, насколько креативными могут быть дизайнеры, это намного лучший подход, чем использование только CSS, потому что он намного более гибкий, но он застает врасплох людей, знакомых с рабочим процессом Flex 3.

Скопировать скин по умолчанию и добавить к нему фон не так уж и сложно. Однако вы также должны иметь возможность использовать старую оболочку Halo, чтобы получить поддержку backgroundImage, если вы так предпочитаете. Я полагаю, вы хотите указать своему VBox использовать mx.skins.halo.HaloBorder.

person Josh Tynjala    schedule 28.10.2009

В итоге я изменил backgroundImage на backgroundSkin, и это решило проблему.

person Marty Pitt    schedule 02.11.2009