В TreeItemrenderer по умолчанию можно включить автоматическую перенос слов в зависимости от ширины дерева, установив wordWrap=true
и variableRowHeight="true"
в элементе управления деревом.
Я хотел бы включить это поведение в MXTreeItemRenderer(обертка для использования искровых компонентов в качестве mx itemrenderer).Я использовал MXTreeItemRenderer, созданный Flexbuilder, и добавил ширину 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>