Solved! Go to Solution.
<?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"> <s:layout> <s:VerticalLayout paddingBottom="10" paddingLeft="10" paddingRight="10" paddingTop="10" /> </s:layout> <fx:Script> <![CDATA[ import com.esri.ags.FeatureSet; import com.esri.ags.Graphic; import com.esri.ags.SpatialReference; import com.esri.ags.geometry.Extent; import com.esri.ags.geometry.MapPoint; import com.esri.ags.layers.FeatureLayer; import com.esri.ags.layers.supportClasses.FeatureCollection; import com.esri.ags.layers.supportClasses.LayerDetails; import com.esri.ags.symbols.SimpleMarkerSymbol; private var spatialReference:SpatialReference = new SpatialReference(102100); // the same as in base(tiled) layer private var initialExtent:Extent; private function addFeatureLayer(features:Array):void { var featureSet:FeatureSet = new FeatureSet(features); var layerDetails:LayerDetails = new LayerDetails(); var featureLayer:FeatureLayer = new FeatureLayer(); featureLayer.featureCollection = new FeatureCollection(featureSet, layerDetails); map.addLayer(featureLayer); map.initialExtent = initialExtent; map.zoomToInitialExtent(); } protected function onAddButtonClick(event:MouseEvent):void { var graphicCollection:Array = new Array(); // create 10 features with random location for (var i:int; i < 10; i++) { var x:Number = Math.random() * 1000000; var y:Number = Math.random() * 1000000; var pt:MapPoint = new MapPoint(x, y, spatialReference); var attributes:Object = new Object(); attributes.timeStamp = new Date(); var graphic:Graphic = new Graphic(pt, new SimpleMarkerSymbol(), attributes); graphic.toolTip = attributes.timeStamp.toString(); graphicCollection.push(graphic); var ptExtent:Extent = new Extent(x, y, x, y, spatialReference); if (!initialExtent) { initialExtent = ptExtent; } else { initialExtent = initialExtent.union(ptExtent); } } addFeatureLayer(graphicCollection); } ]]> </fx:Script> <s:Button label="Add feature layer" click="onAddButtonClick(event)" /> <esri:Map id="map"> <esri:ArcGISTiledMapServiceLayer url="http://server.arcgisonline.com/ArcGIS/rest/services/World_Street_Map/MapServer"/> </esri:Map> </s:Application>
<?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"> <s:layout> <s:VerticalLayout paddingBottom="10" paddingLeft="10" paddingRight="10" paddingTop="10" /> </s:layout> <fx:Script> <![CDATA[ import com.esri.ags.FeatureSet; import com.esri.ags.Graphic; import com.esri.ags.SpatialReference; import com.esri.ags.geometry.Extent; import com.esri.ags.geometry.MapPoint; import com.esri.ags.layers.FeatureLayer; import com.esri.ags.layers.supportClasses.FeatureCollection; import com.esri.ags.layers.supportClasses.LayerDetails; import com.esri.ags.symbols.SimpleMarkerSymbol; private var spatialReference:SpatialReference = new SpatialReference(102100); // the same as in base(tiled) layer private var initialExtent:Extent; private function addFeatureLayer(features:Array):void { var featureSet:FeatureSet = new FeatureSet(features); var layerDetails:LayerDetails = new LayerDetails(); var featureLayer:FeatureLayer = new FeatureLayer(); featureLayer.featureCollection = new FeatureCollection(featureSet, layerDetails); map.addLayer(featureLayer); map.initialExtent = initialExtent; map.zoomToInitialExtent(); } protected function onAddButtonClick(event:MouseEvent):void { var graphicCollection:Array = new Array(); // create 10 features with random location for (var i:int; i < 10; i++) { var x:Number = Math.random() * 1000000; var y:Number = Math.random() * 1000000; var pt:MapPoint = new MapPoint(x, y, spatialReference); var attributes:Object = new Object(); attributes.timeStamp = new Date(); var graphic:Graphic = new Graphic(pt, new SimpleMarkerSymbol(), attributes); graphic.toolTip = attributes.timeStamp.toString(); graphicCollection.push(graphic); var ptExtent:Extent = new Extent(x, y, x, y, spatialReference); if (!initialExtent) { initialExtent = ptExtent; } else { initialExtent = initialExtent.union(ptExtent); } } addFeatureLayer(graphicCollection); } ]]> </fx:Script> <s:Button label="Add feature layer" click="onAddButtonClick(event)" /> <esri:Map id="map"> <esri:ArcGISTiledMapServiceLayer url="http://server.arcgisonline.com/ArcGIS/rest/services/World_Street_Map/MapServer"/> </esri:Map> </s:Application>