map.addEventListener(MapEvent.LAYER_ADD, mapLayerAddHandler, false); map.addEventListener(MapEvent.LAYER_REMOVE, mapLayerRemoveHandler, false); } private function mapLayerAddHandler(event:MapEvent):void { if(layArr.indexOf(event.layer.name) == -1){ layArr.push(event.layer.name); } } private function mapLayerRemoveHandler(event:MapEvent):void { if(layArr.indexOf(event.layer.name) > -1){ layArr.splice(layArr.indexOf(event.layer.name),1); } }map.reorderLayer(dynLayer.id,configData.basemaps.length);
Solved! Go to Solution.
ViewerContainer.getInstance().widgetManager.getWidgetId("some label")this.widgetState("closed");// My Add
private var excludeLayers:Array;
private var exclude:Boolean = false;
// End add
private function init():void
{
if (configXML)
{
useBasemaps = configXML.usebasemaps && configXML.usebasemaps == "true";
askAbout = configXML.askaboutturningonlayer && configXML.askaboutturningonlayer == "true";
//My Add
excludeLayers = [];
var elyrList:XMLList = configXML..excludelayer;
for (var el:int = 0; el < elyrList.length(); el++) {
excludeLayers.push(elyrList[el].@name.toString());
}
}
//End add
if(useBasemaps){
layArr = [];
for(var i:int=0; i<map.layerIds.length; i++)
{
layArr.push(map.layerIds);
}
activeLayer.dataProvider = layArr;
}else{
layArr = [];
for each (var opsLayer:Object in configData.opLayers){
// My Add
opsLayer.exclude = false;
if (excludeLayers.indexOf(opsLayer.label) != -1){
opsLayer.exclude = true
}else{
opsLayer.exclude = false
}
if (opsLayer.exclude != true){
layArr.push(opsLayer.label);
}
}
//End add