我正在为Flex应用程序中的列表组件创建ItemRenderer。在我的项目渲染器中,我有一个StyleableTextField,其中包含列表中当前项目的简短描述。如果此注释过长(可能会这样),我想在末尾用...截断它。

可以使用StyleableTextField做到这一点吗?另外,如果旋转设备,我希望将截断更改为新的宽度。那有可能吗?

我想如果第一个可能的话第二个可能。我要做的就是监听StageOrientationEvent.ORIENTATION_CHANGING事件。

感谢您的时间。

最佳答案

StyleableTextField具有 public 方法

truncateToFit(truncationIndicator:String = "..."):Boolean

会截断文本以使其水平放置,并在文本后附加省略号(...)。

另一种选择是使用LabelItemRenderer,它会自动截断其文本(通过内置的StyleableTextField)并添加省略号。您可以按原样使用LabelItemRender,也可以对其进行扩展以实现自定义LabelItemRenderer。

关于如何扩展LabelItemRenderer的更多阅读:
  • LabelItemRenderer Multiline text support.
  • Extending LabelItemRenderer to look like iTunes on the iPad
  • 10-04 18:07