【发布时间】:2012-04-12 02:08:08
【问题描述】:
是否可以根据其中的数据为弹性列表中的行设置自定义颜色。我知道如何定义自定义 itemrenderer 并执行此操作,但我想知道是否有任何简单的方法,因为我没有不希望列表中有更多组件
【问题讨论】:
标签: actionscript-3 apache-flex
是否可以根据其中的数据为弹性列表中的行设置自定义颜色。我知道如何定义自定义 itemrenderer 并执行此操作,但我想知道是否有任何简单的方法,因为我没有不希望列表中有更多组件
【问题讨论】:
标签: actionscript-3 apache-flex
如果不修改或替换 itemRenderer,就无法将自定义颜色添加到显示数据的 itemRenderer。
Flex 中基于列表的类使用 itemRenderers 来显示数据。如果您创建自己的,那么您将替换默认的 itemRenderer。它不会在内存中创建更多组件;它只会改变那些组件是什么。
【讨论】:
您可以创建自己的自定义列表类,并通过覆盖受保护的 drawRowBackground 方法......您可能会实现这一点......
protected override function drawRowBackground(s:Sprite, rowIndex:int, y:Number, height:Number, color:uint, dataIndex:int):void {
if (rowColoringFunction != null && IList(dataProvider).length > dataIndex) {
color = rowColoringFunction(IList(dataProvider).getItemAt(dataIndex), dataIndex, color);
}
super.drawRowBackground(s, rowIndex, y, height, color, dataIndex);
}
试着告诉我...
【讨论】: