2012-04-12 102 views
0

是否可以根據行中的數據爲Flex列表中的行設置自定義顏色。我知道如何定義自定義的itemrenderer並執行操作,但我想知道是否有任何顏色簡單的方法,因爲我不想在列表中添加更多組件Flex列表行的自定義顏色

回答

1

無法將自定義顏色添加到顯示數據的itemRenderer,而無需修改或替換itemRenderer。

Flex中基於列表的類使用itemRenderer來顯示數據。如果您創建自己的,那麼您將替換默認的itemRenderer。它不會在內存中創建更多的組件;它只會改變這些組件。

0

你可以創建自己的自定義列表類和overrideing保護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); 
    } 

嘗試,讓我知道...