ArcGIS API For Flex在应用程序中添加web地图

版本3.6  原文摘录:https://developers.arcgis.com/flex/guide/tutorial-add-a-web-map-to-the-application.htm


一个ArcGIS网站地图底图和一组相关的图层,用户可以交互进行一些有意义的任务,这些地图提供给广大受众,其中包括多尺度底图,针对特定受众的操作层,并弹出窗口( pop-up windows ),让用户专注于感兴趣的特定功能​​,以及其他数据格式(text files,shapefiles,KML, 等),这些Web地图是可于各种各样客户端,包括移动设备,台式机应用程序和Web浏览器

Access web map identifer

有两种方式将数据信息添加到地图组件中,一种是 Add a map with layers,一种是   ArcGIS.com Viewer提供  ,如果有可能,门户网站的ArcGIS Web地图。一旦创作,网络地图可以被共享的资源,并通过其独特的项目ID访问。


创建Web地图后,复制网站Map Id,并注意该URL包括独特的地图标识符。一个这样的例子显示如下。


Add the web map to the application


这个WebMapUtil类是基于一个给定ID的web map项目信息用来创建地图 ,这个类需要在线的ArcGIS网络地图上工作,也可以使用 ArcGIS 的门户网站,通过设置arcgisSharingURL属性 ,本教程使用Online ArcGIS地图学习


在Flash Builder中,创建一个新的项目,并加入Flex的API库

Editor View编辑器视图中添加下面的代码。另外,请一定要引用ESRI的命名空间

<?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:esri="http://www.esri.com/2008/ags"
   initialize="application_initializeHandler(event)">

<fx:Script>
   <![CDATA[

    import com.esri.ags.events.WebMapEvent;
    import mx.controls.Alert;
    import mx.events.FlexEvent;

    protected function application_initializeHandler(event:FlexEvent):void
    {
     webMapUtil.createMapById("4778fee6371d4e83a22786029f30c7e1");
    }

    protected function webMapUtil_createMapByIdCompleteHandler(event:WebMapEvent):void
    {
     addElementAt(event.map,0);
    }
   ]]>
</fx:Script>

<fx:Declarations>
   <esri:WebMapUtil id="webMapUtil"
    createMapByIdComplete="webMapUtil_createMapByIdCompleteHandler(event)"
    fault="Alert.show(event.fault.faultString);"/>
   </fx:Declarations>

<s:Label top="10"
   fontSize="24"
   horizontalCenter="0"
   text="ArcGIS.com Web Map"/>

</s:Application>

当程序中 initializeHandler  函数被触发,并使用提供的web map ID  4778fee6371d4e83a22786029f30c7e1

一旦地图完成构建,the createMapByIdCompleteHandler 函数就会被触发,event事件调用 Spark container's容器addElement 函数map中传递


运行效果

相关文章

一:display:flex布局display:flex是一种布局方式。它即可以...
1. flex设置元素垂直居中对齐在之前的一篇文章中记载过如何...
移动端开发知识点pc端软件和移动端apppc端软件是什么,有哪些...
最近挺忙的,准备考试,还有其他的事,没时间研究东西,快周...
display:flex;把容器设置为弹性盒模型(设置为弹性盒模型之后...
我在网页上运行了一个Flex应用程序,我想使用Command←组合键...