У меня проблема с использованием функции itemRenderer. При использовании ArrayCollection видимые данные в DataGrid с использованием itemRenderer будут отображаться очень хорошо. Но если я начну прокручивать, записи будут повторяться в ячейках с помощью средства визуализации. Ячейки не заполнены датой в соответствии с идентификатором. Какую ошибку я здесь делаю.
Я прочитал много объяснений, таких как:
http://blogs.adobe.com/aharui/2007/03/thinking_about_item_renderers_1.html
вот код для функции установки данных (itemRenderer расширяет HBox):
override public function set data(value:Object):void {
_data = value;
if(data!=null)
{
var maxValue:Number = 0;
var maxFontHeight:int = 18;
for each(var term:ArrayCollection in _data.story)
{
if((term.getItemAt(1) as Number)>maxValue)
maxValue=term.getItemAt(1) as Number;
}
for each(var term:ArrayCollection in _data.story)
{
var FontHeight:int = Math.floor((term.getItemAt(1) as Number) * maxFontHeight / maxValue);
var l:Label = new Label();
l.text = term.getItemAt(0) as String;
l.setStyle("fontWeight","normal");
l.setStyle("fontFamily","Verdana");
l.setStyle("paddingRight",0);
l.setStyle("paddingLeft",0);
l.setStyle("fontSize", FontHeight);
l.setStyle("color", 0x000000);
this.addChild(l);
}
}
}