2012-04-12 2 views
0

フレックスリスト内のデータに応じてカスタムカラーを設定することは可能ですか?カスタムitemrendererを定義する方法はわかりますが、それがあるかどうかを知りたいリストに多くのコンポーネントを入れたくないのでシンプルなメソッドフレックスリストの行のカスタムカラー

答えて

1

itemRendererを変更または置き換えずにデータを表示するitemRendererにカスタム色を追加することはできません。

Flexのリストベースのクラスは、itemRenderersを使用してデータを表示します。自分で作成した場合は、デフォルトのitemRendererを置き換えます。それはメモリにそれ以上のコンポーネントを作成しません。それらのコンポーネントの内容を変更するだけです。

0

独自のカスタムリストクラスを作成することができ、保護drawRowBackground方法をoverrideingで....あなたがこれをachiveかもしれません....

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); 
    } 

試してみると、私に知らせて...

関連する問題