1

アイテム レンダラーでラベルを回転させようとしています。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>
4

1 に答える 1

3

レンダラーが(BasicLayoutデフォルトで) 使用している は、回転時にオブジェクトの幅/高さ/位置などで発生する変換を考慮しません。オブジェクトが回転されていないかのようにオブジェクトを配置しようとします。

VerticalLayoutただし、またはのような他のレイアウトを使用する場合HorizontalLayoutは、オブジェクトの新しい寸法 (回転後) が使用されます。

上記を適切に説明していない可能性がありますが、この問題の簡単な解決策は、レンダラーにレイアウト宣言を追加することです。

<s:layout>
    <s:VerticalLayout/>
</s:layout>
于 2012-12-30T18:33:00.523 に答える