我正在 Datagrid itemRenderer(从 UIComponent 扩展)中创建一个标签,现在我正在将标签的宽度设置为某个静态值。我想创建 100% 宽度的标签。我不想使用 unScaledWidth,因为我正在使用链接作为标签,因此链接将在整个单元格中可见。
我在这里先向您的帮助表示感谢。
我正在 Datagrid itemRenderer(从 UIComponent 扩展)中创建一个标签,现在我正在将标签的宽度设置为某个静态值。我想创建 100% 宽度的标签。我不想使用 unScaledWidth,因为我正在使用链接作为标签,因此链接将在整个单元格中可见。
我在这里先向您的帮助表示感谢。
我在这里遗漏了什么还是你应该简单地使用percentWidth
?
使用 percentWidth 将不起作用。如果您在 ItemRenderer 中只有 a Label
,请确保 Label 具有(如果是 mx 项目渲染器)autolayout="true"
(这是默认设置)并添加top="0" left="0" right="0" bottom="0"
到Label
. 这将使您的标签占据整个单元格。
如果您使用的是 Spark 项目渲染器,则 none 的默认布局是绝对布局,只需添加top="0" left="0" right="0" bottom="0"
到Label
应该就足够了。
另一方面,updateDisplayList() 和 measure() 是 Flex 中使用最频繁的两个覆盖。在尝试覆盖 updateDisplayList() 和 measure() 之前,请始终尝试使用 MXML 皮肤类解决您的问题。大多数 MX 类绘图方法在执行大部分绘图的方法中实现不正确,private
这使得扩展这些类变得困难。