2011-08-05 8 views
0

こんにちは私はフレックス& Googleマップで解決しようとしている問題を誰かが私に助けてくれるのだろうかと思っています。フレックスFlashbuilder Googleマップ

マーカーが付いているマップがあります。各マーカーにはイベントリスナーがあります。そして私が達成したいのは、各マーカーがクリックされると、そのマーカーに関連付けられたデータがデータグリッドに設定されていることです。しかし、現時点では、データグリッドにLatLngオブジェクトを設定することしかできません。そのマーカーに関連付けられている他のデータにアクセスする方法を見つける必要があります。ここで

は私のイベントリスナーです:

private function createMarker(latlng:LatLng, int:Number, tip:String, desc:String):Marker 
{ 
    var m:Marker = new Marker (latlng, new MarkerOptions ({hasShadow: true, tooltip: "" +tip})); 
    m.addEventListener(MapMouseEvent.CLICK, function(event:MapMouseEvent):void 
     {details.addItem(event.latLng.toString());}); 
    return m; 
} 

私はので、私はそれを把握することはできません、それは緯度経度= event.latLngのGetItemの線に沿ってかもしれないが、私は曲げることは本当に新しいです考えていましたまったく。

正しいトラックに私を置く可能性のあるアイデアは本当に感謝します。

L

答えて

0

はこれを試してみてください:

private var markerArray:Array = []; 
private var markerDescriptsArray:Array = []; 
private function createMarker(latlng:LatLng, int:Number, tip:String, desc:String):Marker 
{ 
    var m:Marker = new Marker (latlng, new MarkerOptions ({hasShadow: true, tooltip: "" +tip})); 
    m.addEventListener(MapMouseEvent.CLICK, function(event:MapMouseEvent):void 
    { 
     var _mIndex:uint; 
     for (var i:uint = 0; i < markerArray.length; i++) 
     { 
      if(markerArray[i] == Marker(e.currentTarget)) _mIndex = i; 
     } 
     details.addItem(markerDescriptsArray[_mIndex]); 
    }); 
    markerArray.push(m); 
    markerDescriptsArray.push(desc); 
    return m; 
} 
+0

が、それはあなたのために働くましたか? – Spencer