<?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" xmlns:ags="http://www.esri.com/2008/ags"> <!-- Adobe Flex SDK 4.5.1 --> <!-- ArcGIS API for Flex 2.5 --> <s:layout> <s:HorizontalLayout gap="5" paddingBottom="10" paddingLeft="20" paddingRight="20" paddingTop="20"/> </s:layout> <fx:Script> <![CDATA[ import com.esri.ags.events.LayerEvent; import com.esri.ags.layers.Layer; import mx.collections.ArrayCollection; import spark.events.IndexChangeEvent; [Bindable] private var layersList:ArrayCollection = new ArrayCollection(); protected function onLayerLoad(event:LayerEvent):void { layersList.addItem(event.layer); if (layersList.length == 1) { ddlLayers.selectedIndex = 0; ddlLayers.dispatchEvent(new IndexChangeEvent(IndexChangeEvent.CHANGE, false, false, -1, 0)); } } protected function onLayerSelectionChange(event:IndexChangeEvent):void { for each (var layer:Layer in myMap.layers) { if (layer == ddlLayers.selectedItem) { layer.visible = true; layer.validateNow(); myLegend.map = myMap; myLegend.respectCurrentMapScale = true; myLegend.layers = new Array(layer); } else if (layer is ArcGISDynamicMapServiceLayer) { layer.visible = false; } } } ]]> </fx:Script> <ags:Map id="myMap"> <ags:ArcGISTiledMapServiceLayer id="baseLayer" url="http://server.arcgisonline.com/ArcGIS/rest/services/World_Topo_Map/MapServer"/> <ags:ArcGISDynamicMapServiceLayer id="layer1" load="onLayerLoad(event)" imageFormat="png32" name="Events" url="http://sampleserver5.arcgisonline.com/ArcGIS/rest/services/LocalGovernment/Events/MapServer" /> <ags:ArcGISDynamicMapServiceLayer id="layer2" load="onLayerLoad(event)" imageFormat="png32" name="Recreation" url="http://sampleserver5.arcgisonline.com/ArcGIS/rest/services/LocalGovernment/Recreation/MapServer" /> <ags:ArcGISDynamicMapServiceLayer id="layer3" load="onLayerLoad(event)" imageFormat="png32" name="Geology" url="http://sampleserver5.arcgisonline.com/ArcGIS/rest/services/Energy/Geology/MapServer" /> </ags:Map> <s:VGroup gap="5" paddingLeft="5" paddingTop="5" paddingRight="5" paddingBottom="5" height="100%" width="100%"> <s:DropDownList id="ddlLayers" minWidth="200" dataProvider="{layersList}" labelField="name" change="onLayerSelectionChange(event)"/> <s:Scroller height="100%"> <s:Group height="100%"> <ags:Legend id="myLegend" /> </s:Group> </s:Scroller> </s:VGroup> </s:Application>
Aangemelde leden kunnen berichten plaatsen, updates volgen en meer. Nieuw hier? Registreer een gratis account.
Find useful guides, FAQs, and documents to help you navigate and make the most of Esri Community.