Удаление стиля по умолчанию из Flex 4 (spark) ItemRenderer - PullRequest
0 голосов
/ 20 сентября 2011

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

Метки вне списка имеют прозрачный фон, но как часть ItemRenderer или List, они получают белый фон. Я предполагаю, что это часть стиля по умолчанию, применяемого к Spark ItemRenderer.

Вопрос - Есть ли способ полностью избавиться от всех визуальных стилей по умолчанию, применяемых к ItemRenderer?

protected var messages:ArrayCollection = new ArrayCollection( new Array("1", "2", "3", "etc") );

<s:List dataProvider="{messages}" itemRenderer="SimpleTextRenderer">
    <s:layout >
        <s:HorizontalLayout verticalAlign="middle" />
    </s:layout>
</s:List>

SimpleTextRenderer:

<?xml version="1.0" encoding="utf-8"?>
<s:ItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009" 
            xmlns:s="library://ns.adobe.com/flex/spark" 
            xmlns:mx="library://ns.adobe.com/flex/mx" 
            autoDrawBackground="false" contentBackgroundAlpha="0" >

    <s:Label text="{data}" />   

</s:ItemRenderer>

1 Ответ

1 голос
/ 20 сентября 2011

Вы можете реализовать свой собственный рендерер элементов, расширяя UIComponent (или Label), например, и реализуя IItemRenderer .На самом деле это довольно просто, как объяснено здесь (вам не нужно реализовывать оба указанных интерфейса, поскольку один реализует другой).

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

...