arcgisviewer for flex 實現as 和 mxml傳遞變數,arcgisviewermxml

來源:互聯網
上載者:User

arcgisviewer for flex 實現as 和 mxml傳遞變數,arcgisviewermxml

一:問題由來

(1)今天遇到了一個問題:首先根據多組經緯度把小表徵圖定位到地圖上,之後點擊小表徵圖顯示各自的資訊,可是總是顯示最後一個經緯度傳過來的資訊,如何擷取PictureMarkerSymbol 的id

(2)現在點擊PictureMarkerSymbol表徵圖,總是顯示最後一個經緯度的資訊,怎麼實現呢?

(3)是不是 var so:SharedObject = SharedObject.getLocal("ccc","/");  SharedObject的問題?(事實上是的)

(4)最開始想通過obj傳遞過去,為空白null代碼圖如下


(5)單機之後的:


(6)這也是一個問題,造成運行灰常的慢。


(7)var so:SharedObject = SharedObject.getLocal("ccc","/");  SharedObject,造成總是獲得最後一個id的資訊。



二:解決問題


(1)功能實現 —— 就是根據一組經緯度實現定位各個小表徵圖在地圖上,之後點擊各個圖表分別顯示各自的資訊。

(2)代碼實現(封裝一下)

import com.esri.ags.Graphic;import com.esri.ags.Map;import spark.modules.Module;// 上面三個都是必須用到的import widgets.zyp.BeiDouWidget2;// 自訂的mxmlimport flash.events.MouseEvent;import flash.external.ExternalInterface;import flash.geom.Point;private var curMap:Map;private var curGraphicsLayer:GraphicsLayer;private var curPopup:Module;// 對應三個的對象//在指定經緯度繪製infosymbol(可以是多個) 正確版本private var htmlContent:widgets.zyp.BeiDouWidget2;[Embed(source="assets/images/satellite.png")]private const pic:Class;public function drawInfoSymbol(lat:Number, lon:Number ,information:String):void {var pictureMarkerSymbol:PictureMarkerSymbol = new PictureMarkerSymbol(pic,40,40);// url,heigth,widthvar pictureMarkerSymbolGraphic:Graphic = new Graphic(new MapPoint(lon,lat),pictureMarkerSymbol);curGraphicsLayer.add(pictureMarkerSymbolGraphic);//添加小紅旗pictureMarkerSymbolGraphic.addEventListener(MouseEvent.CLICK,function(event:MouseEvent):void{// 封裝的點擊事件var bd:BeiDouWidget2 = new BeiDouWidget2();bd.content = information;curMap.infoWindowContent = bd;curMap.infoWindow.show(curMap.toMapFromStage(event.stageX, event.stageY));})}




聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.