0

次のコードを使用して、LegendItems を Legend に動的に挿入しています。

signalLegend.removeAllChildren();
signalLegend.direction = "vertical";
for (var i:int = 0; i < numItems - 1; i++) {
    signalLegend.addChild(new LegendItem());
    legendItem = signalLegend.getChildAt(i) as LegendItem;
    legendItem.label = "Title here";
    legendItem.setStyle("fill", theColour);
}

凡例の方向は垂直に設定されていますが、すべての項目が水平に表示されています。

とてもうるさい。

4

3 に答える 3

0

これはバグのようです。Legendコントロールの子は、実行時に追加すると間違って配置されます。方向を「水平」に設定すると、アイテムが垂直に表示されます。:-)

于 2010-03-18T12:07:59.663 に答える
0

labelPlacement スタイルを使用する

于 2009-07-01T14:22:17.490 に答える
0

わかりました、解決策を見つけました。

                <mx:Legend id="nhLeg"
                       updateComplete="LegendPosition()"
                       direction="vertical"
                       width="80%"/>

そして LegendPosition() 関数で:

            private function LegendPosition():void
        {

            nhLeg.direction="vertical";
        }
于 2010-05-11T08:42:36.593 に答える