我已经实现了一个自定义项目渲染器,我正在处理的 Flex 项目上将其与组合框一起使用。它显示每个项目的图标和一些文本。唯一的问题是,当文本较长时,菜单的宽度无法正确调整,并且文本在显示时会被截断。我尝试调整所有明显的属性来缓解这个问题,但没有取得任何成功。有谁知道如何使组合框菜单宽度适当地缩放以适应其呈现的任何数据?
我的自定义项目渲染器实现是:
<?xml version="1.0" encoding="utf-8"?>
<mx:HBox xmlns:mx="http://www.adobe.com/2006/mxml"
styleName="plain" horizontalScrollPolicy="off">
<mx:Image source="{data.icon}" />
<mx:Label text="{data.label}" fontSize="11" fontWeight="bold" truncateToFit="false"/>
</mx:HBox>
我的组合框像这样使用它:
<mx:ComboBox id="quicklinksMenu" change="quicklinkHandler(quicklinksMenu.selectedItem.data);" click="event.stopImmediatePropagation();" itemRenderer="renderers.QuickLinkItemRenderer" width="100%"/>
编辑:
我应该澄清一下:我可以将组合框上的 dropdownWidth 属性设置为任意大的值 - 这将使一切适合,但它会太宽。由于此组合框中显示的数据是通用的,因此我希望它自动调整自身大小以适应数据提供程序中最大的元素(flex 文档说它会执行此操作,但我感觉我的自定义项渲染器在某种程度上破坏了该行为)
只是一个随机的想法(不知道这是否有帮助):
尝试将父级 HBox 和标签的宽度设置为 100%。这通常解决了我遇到的类似问题。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)