如何在Spark DataGrid中设置行的文本颜色

时间:2013-03-20 21:27:28

标签: flex flex-spark

我在Spark DataGrids中设置行颜色和文本颜色的次数比我记忆中的多了很多。这篇文章展示了如何设置它。

1 个答案:

答案 0 :(得分:0)

要在网格项行上设置文本样式,我们需要创建一个新的DataGrid项呈示器。

不幸的是,当我们在Flash Builder中创建一个新的ItemRenderer时,它只会创建一个只带有标签的裸骨ItemRenderer。默认情况下,它不会为状态添加任何支持。

要设置我们需要的样式,我们需要创建一个具有悬停状态的新ItemRenderer,然后设置这些状态的颜色值。

<?xml version="1.0" encoding="utf-8"?>
<s:GridItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009" 
                    xmlns:s="library://ns.adobe.com/flex/spark" 
                    xmlns:mx="library://ns.adobe.com/flex/mx" 
                    clipAndEnableScrolling="true">

    <s:states>
        <s:State name="normal" />
        <s:State name="hovered" />
        <s:State name="down" />
        <s:State name="selected" />
    </s:states>

    <s:Label id="labelDisplay" top="9" left="7"
             color.normal="#171515" 
             color.hovered="#FFFFFF" 
             color.down="#FFFFFF"
             color.selected="#FFFFFF"
             />

</s:GridItemRenderer>

然后我们需要将DataGrid指向我们的项呈示器:

<s:DataGrid itemRenderer="view.renderers.AbstractDataGridItemRenderer">