在项呈示器中将标签旋转90度

时间:2012-12-30 15:56:53

标签: flex list itemrenderer

我正在尝试在项呈示器上旋转标签。 当我将它旋转45度时,它工作得很好但是当我将它旋转90度时, 这是我想要做的,标签是旋转但在列表创建后, 旋转的标签互相翘起。

我可以选择45度但是看起来像90度没有 宽度。当我声明宽度和高度以及填充时,但这也没有解决它。

如何让我的标签成90度而不会让它们相互升级?

我的项目渲染器:

<?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" >
    <fx:Script>
        <![CDATA[
            override public function set data(value:Object):void
            {
                super.data = value;
                dateLabel.text = data.date;

            }
        ]]>
    </fx:Script>
    /* When rotation is 90, my labels are just stepping up eachother */
    <s:Label id="dateLabel" rotation="45"/>
</s:ItemRenderer>

1 个答案:

答案 0 :(得分:3)

渲染器正在使用的BasicLayout(默认情况下)在旋转时不会考虑对象的宽度/高度/位置/等中发生的变换。它仍然试图将对象布局,就好像它们没有旋转一样。

但是,如果您使用任何其他布局,例如VerticalLayoutHorizontalLayout,则会使用对象新尺寸(旋转后)。

我可能没有正确解释上述问题,但解决此问题的一个简单方法就是向渲染器添加布局声明:

<s:layout>
    <s:VerticalLayout/>
</s:layout>