Add the features from the last choosen to an arraylist or arraycollection variable, then when u wanna go back u will pass those values to the zoom extent.
Hey Jason,
Do you have the updated code for this drop down? My combobox will still not populate using the code above.
private function init_onComplete(event:Event):void { var extentArray:ArrayCollection = new ArrayCollection; var loader:URLLoader = URLLoader(event.target) xmlParameters = new XML(loader.data) xmlProjectParameters = xmlParameters.communities.(@id=="communities") for (var i:int = 0; i < xmlProjectParameters.extents.extent.length(); i++) { extentArray.addItem({label:xmlProjectParameters.extents.extent.@name.toString(), xmin: xmlProjectParameters.extents.extent.@xmin.toString(), ymin: xmlProjectParameters.extents.extent.@ymin.toString(), xmax: xmlProjectParameters.extents.extent.@xmax.toString(), ymax: xmlProjectParameters.extents.extent.@ymax.toString()}); } dropdown.dataProvider = extentArray; }
//the following two functions import the bookmarks.xml file private var xmlParameters:XML; public var xmlProjectParameters:XMLList; private function init():void { var xmlLoader:URLLoader = new URLLoader(); xmlLoader.load(new URLRequest("bookmarks.xml")); xmlLoader.addEventListener(Event.COMPLETE,init_onComplete); } private function init_onComplete(event:Event):void { var extentArray:ArrayCollection = new ArrayCollection; try { var loader:URLLoader = URLLoader(event.target) xmlParameters = new XML(loader.data) xmlProjectParameters = xmlParameters.communities.(@id=="communities") if (!(xmlParameters.extents == undefined)) { dropdown.visible = true; for (var i:int = 0; i < xmlProjectParameters.extents.extent.length(); i++) { extentArray.addItem({label:xmlProjectParameters.extents.extent.@name.toString(), xmin: xmlProjectParameters.extents.extent.@xmin.toString(), ymin: xmlProjectParameters.extents.extent.@ymin.toString(), xmax: xmlProjectParameters.extents.extent.@xmax.toString(), ymax: xmlProjectParameters.extents.extent.@ymax.toString()}); } dropdown.dataProvider = extentArray; } } catch(e:Error) { Alert.show("Error: " + e.message); return; } } //Zoom to your community tool public function change():void { var extent:Extent = new Extent(Number(dropdown.selectedItem.xmin), Number(dropdown.selectedItem.ymin), Number(dropdown.selectedItem.xmax), Number(dropdown.selectedItem.ymax)) myMap.extent = extent; }
<bookmarks> <communities id="communities"> <extents> <extent name="Community #1" xmin="-13181026" ymin="4010315" xmax="-13164974" ymax="4017443"/> </extents> </communities> </bookmarks>
<?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:esri="http://www.esri.com/2008/ags" xmlns:container="com.esri.ags.script.*" initialize="init()" >
var loader:URLLoader(event.target)
var loader:URLLoader = new URLLoader();
catch(e:Error) { Alert.show("Error: " + e.message); return; }
private var xmlParameters:XML; public var xmlProjectParameters:XMLList; private function init():void { var xmlLoader:URLLoader = new URLLoader(); xmlLoader.load(new URLRequest("bookmarks.xml")); xmlLoader.addEventListener(Event.COMPLETE,init_onComplete); } private function init_onComplete(event:Event):void { var extentArray:ArrayCollection = new ArrayCollection; try { var loader:URLLoader(event.target) xmlParameters = new XML(loader.data) xmlProjectParameters = xmlParameters.communities.(@id=="communities") if(!(xmlParameters.extents == undefined)) { dropdown.visible = true; for (var i:int = 0; i < xmlProjectParameters.extents.extent.length(); i++) { extentArray.addItem({label:xmlProjectParameters.extents.extent.@name.toString(), xmin: xmlProjectParameters.extents.extent.@xmin.toString(), ymin: xmlProjectParameters.extents.extent.@ymin.toString(), xmax: xmlProjectParameters.extents.extent.@xmax.toString(), ymax: xmlProjectParameters.extents.extent.@ymax.toString()}); } dropdown.dataProvider = extentArray; } } } //Zoom to your community tool public function change():void { var extent:Extent = new Extent(Number(dropdown.selectedItem.xmin), Number(dropdown.selectedItem.ymin), Number(dropdown.selectedItem.xmax), Number(dropdown.selectedItem.ymax)) myMap.extent = extent; }
public function change():void {
<?xml version="1.0" encoding="utf-8"?> <bookmarks> <communities id="communities"> <extents> <extent name="Community #1" xmin="-13181026" ymin="4010315" xmax="-13164974" ymax="4017443"/> </extents> </communities> </bookmarks>
private var xmlParameters:XML; public var xmlProjectParameters:XMLList; private function init():void { var xmlLoader:URLLoader = new URLLoader(); xmlLoader.load(new URLRequest("parameters.xml")); xmlLoader.addEventListener(Event.COMPLETE,init_onComplete); } private function init_onComplete(event:Event):void { var extentArray:ArrayCollection = new ArrayCollection; try { var loader:URLLoader = URLLoader(event.target) xmlParameters = new XML(loader.data) xmlProjectParameters = xmlParameters.project.(@id=="Testing") if (!(xmlParameters.extents == undefined)) { cboExtent.visible = true; for (var i:int = 0; i < xmlProjectParameters.extents.extent.length(); i++) { extentArray.addItem({label:xmlProjectParameters.extents.extent.@name.toString(), xmin: xmlProjectParameters.extents.extent.@xmin.toString(), ymin: xmlProjectParameters.extents.extent.@ymin.toString(), xmax: xmlProjectParameters.extents.extent.@xmax.toString(), ymax: xmlProjectParameters.extents.extent.@ymax.toString()}); } cboExtent.dataProvider = extentArray; }
public function cboExtent_Close():void { var extent:Extent = new Extent(Number(cboExtent.selectedItem.xmin), Number(cboExtent.selectedItem.ymin), Number(cboExtent.selectedItem.xmax), Number(cboExtent.selectedItem.ymax)) mainMap.extent = extent; }
<projects> <project id="Testing"> <extents> <extent name="Full Extent" xmin="-7389794" ymin="2023797" xmax="-7360030" ymax="2040131"/> <extent name="Zoomin" xmin="-7370000" ymin="2030000" xmax="-7365000" ymax="2035000"/> </extents> </project> </projects>
Membros conectados podem postar, seguir atualizações e mais. Novo aqui? Registre uma conta gratuita.
Find useful guides, FAQs, and documents to help you navigate and make the most of Esri Community.