Hi,
Until now I used this code to use an itemRenderer with a <j:List>
<fx:Style>
@namespace "http://www.w3.org/1999/xhtml";
@namespace j "library://ns.apache.org/royale/jewel";
.MyplayImageListItemRenderer
{
IItemRenderer:
ClassReference("itemRenderers.MyplayImageListItemRenderer");
}
</fx:Style>
...
<j:List localId="lst_hcontent" className="MyplayImageListItemRenderer"/>
And the ItemRenderer class :
<j:ListItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:j="library://ns.apache.org/royale/jewel"
xmlns:js="library://ns.apache.org/royale/basic"
xmlns="http://www.w3.org/1999/xhtml"
>
<j:Image localId="bmp" />
...
override public function set data(value:Object):void {
bmp.src = ...
}
</j:ListItemRenderer>
This is working great.
Now I need to set itemRenderer at runtime. I struggle to do it.
I tried the classic way before setting the dataprovider :
lst_hcontent.itemRenderer = new
ClassFactory(MyplayImageListItemRenderer);
But it doesn't work
Also tried this code :
var factory:ClassFactory = new
ClassFactory(MyplayImageListItemRenderer);
factory.generator = MyplayImageListItemRenderer;
var dataIRBead:DataItemRendererFactoryForCollectionView = new
DataItemRendererFactoryForCollectionView(factory);
lst_hcontent.addBead(dataIRBead);
But in both case the itemRenderer is ignored.
I also tried to affect className at runtime like this :
lst_hcontent.className = "HBrowserItemMyPlayListRenderer";
But doesn't work
Could I have some help on doing it ? Thanks