API Team, I am struggling to to the KMLLayer.getLegendInfos procedure...Here is what I am trying so far:
var kmllayer:KMLLayer = new KMLLayer("http://explore.data.gov/download/db3a-9tgn/KML");
kmllayer.getLegendInfos(new AsyncResponder(kmlLegendResult,kmlLegendFault,null));
private function kmlLegendResult(lInfos:Array, token:Object):void
{
var llInfo:LayerLegendInfo = lInfos[0] as LayerLegendInfo;
const layName:LegendDataItem = new LegendDataItem();
layName.lname = llInfo.layerName;
layName.id = Number.NaN;
layName.label = llInfo.layerName;
layName.minscale = llInfo.minScale;
layName.maxscale = llInfo.maxScale;
const lClass:LegendDataClassItem = new LegendDataClassItem();
for(var ll2:int =0; ll2 < llInfo.legendItemInfos.length; ll2++){
var lli:LegendItemInfo = llInfo.legendItemInfos[ll2] as LegendItemInfo;
lClass.symbolitems.push(processRenderer(lli));
layName.legendGroup.push(lClass);
}
_legendData.addItem(layName);
FlexGlobals.topLevelApplication.dispatchEvent(new Event("legendDataLoaded$"));
}
private function kmlLegendFault(evt:FaultEvent):void
{
trace(evt.message);
FlexGlobals.topLevelApplication.dispatchEvent(new Event("legendDataLoaded$"))
}
legendItemInfos is always 0Is this something that just does not work yet?