pessoal, mais uma vez preciso da ajuda de vocês. cheguei a um ponto
interessante, porém não estou conseguindo resolver o problema:
private function
setarIconesRecursivo(dataProvider:ArrayCollection):void{
for(var i:uint=0; i<dataProvider.length;i++){
if(dataProvider[i].icone != null){
evento = new EventLoadCustom("customEvent");
evento.evtItemTree = dataProvider[i];
dispatchEvent(evento);//disparo o evento com o ítem que
deve conter
o ícone
loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE,
getBitmapData);
loader.loadBytes(dataProvider[i].icone);
// a função getBitmapData só será executada após o
término do laço
// sendo assim, apenas o último ítem ficará com ícone
}
if(dataProvider[i].children != null){
setarIconesRecursivo(ArrayCollection(dataProvider[i].children));
return;
}
}
}
private function getBitmapData(evt:Event):void{
//quando a execução chegar aquí será o último ítem com ícone do tree.
var conteudo:* = loader.content;
bitmapData = new BitmapData(conteudo.width,conteudo.height,true,
0x00000000);
var matrix:Matrix = new Matrix();
bitmapData.draw(conteudo, matrix,null,null,null,true);
var icone:Class = RuntimeBitmapAsset.getClass(bitmapData);//esse cara
aquí pega a classe do bitmapdata em tempo de execução
_menuTree.setItemIcon(evento.evtItemTree, icone, null);//beleza, aquí
consigo então setar o ícone.
}
podem ajudar por favor?
--
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para [email protected]
Para sair da lista, envie um email em branco para
[email protected]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev