itemrender をビューとして見るため、レンダラー自体は計算を行わず、オブジェクトの値を確認するだけです...
私が正しく理解していれば、私はそのようなことをします...
(チェックを set data から updatedisplaylist に移動する必要があるかもしれません)
例:
class Test
{
public var col1:String = "Everything";
public var col3:String = "Cars";
public function get color():uint
{
if (col1 == "Everything")
return 0xff0000;
return 0x000000;
}
}
itemrendererA.mxml
override public function set data(value:Object):void
{
super.data = value;
if (super.data != null && super.data is Test)
{
// do what you need to do..
lbl1.text = (super.data as Test).col1;
lbl1.setStyle("color", (super.data as Test).color);
}
}
itemrendererB.mxml
override public function set data(value:Object):void
{
super.data = value;
if (super.data != null && super.data is Test)
{
if ( (super.data as Test).color == 0xff0000)
// do something
else
// do something else
}
}
それがあなたが探しているものでない場合は、コードの一部を追加してください...