【发布时间】:2010-07-23 18:30:06
【问题描述】:
使用默认的 TreeItemrenderer,可以通过在树控件中设置 wordWrap=true 和 variableRowHeight="true" 来根据树的宽度启用自动换行。
我想在 MXTreeItemRenderer(将 spark 组件用作 mx itemrenderer 的包装器)中启用此行为。 我使用了 Flexbuilder 创建的 MXTreeItemRenderer,并为标签组件添加了 100% 的宽度(参见下面的代码)。
自动换行现在可以工作,但在许多情况下,当有换行时,项目渲染器高度的计算是错误的。它似乎适用于固定宽度。
知道如何解决这个问题吗?
<s:MXTreeItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx">
<s:states>
<s:State name="normal" />
<s:State name="hovered" />
<s:State name="selected" />
</s:states>
<s:HGroup left="0" right="0" top="0" bottom="0" verticalAlign="middle">
<s:Rect id="indentationSpacer" width="{treeListData.indent}" percentHeight="100" alpha="0">
<s:fill>
<s:SolidColor color="0xFFFFFF" />
</s:fill>
</s:Rect>
<s:Group id="disclosureGroup">
<s:BitmapImage source="{treeListData.disclosureIcon}" visible="{treeListData.hasChildren}" />
</s:Group>
<s:BitmapImage source="{treeListData.icon}" />
<s:Label id="labelField" text="{treeListData.label}" paddingTop="2" width="100%"/>
</s:HGroup>
</s:MXTreeItemRenderer>
【问题讨论】:
标签: apache-flex tree word-wrap itemrenderer