I’m having an issue to display markers into google map. I use XML to parse those markers.
**Flash gives me that error msg:
TypeError: Error #1009: Cannot access a property or method of a null object reference.
However I can see Latitude and Longitude display while traced them…
Does anyone can help me?
package
{
import flash.display.Sprite;
import flash.events.Event;
import flash.geom.Point;
import com.google.maps.LatLng;
import com.google.maps.Map;
import com.google.maps.MapEvent;
import com.google.maps.MapType;
import com.google.maps.overlays.Marker;
import com.google.maps.overlays.MarkerOptions;
import com.google.maps.controls.ZoomControl;
import utils.LoadXML;
import utils.ParseXML;
public class GoogleMaps extends Sprite
{
private var loader:LoadXML;
private var parser:ParseXML;
private var tabMarkers:Array;
private var map:Map;
private static var FILE:String = "../xml/markers.xml";
private static var KEY:String = "";
public function GoogleMaps()
{
map = new Map();
map.key = "ABQIAAAAySpiyKFbR2kyvDyp02w_DhT2yXp_ZAY8_ufC3CFXhHIE1NvwkxTnKLUMs9zrkisTjGfTICBrTK1K2w";
map.setSize(new Point(stage.stageWidth, stage.stageHeight));
map.addEventListener(MapEvent.MAP_READY, onMapReady);
addChild(map);
loadXML();
}
private function onMapReady(event:Event):void
{
map.setCenter(new LatLng(45.555255,-73.581336), 13, MapType.NORMAL_MAP_TYPE);
map.addControl(new ZoomControl());
}
private function loadXML()
{
loader = new LoadXML(FILE, handleLoadedXML);
}
private function handleLoadedXML(event:Event)
{
var markers:XML = new XML(event.target.data);
parser = new ParseXML(markers);
tabMarkers = new Array();
for each(var item:XML in markers.point)
tabMarkers.push({ latitude:item.lat, longitude:item.long });
for(var i:int=0; i<tabMarkers.length; i++)
{
trace(tabMarkers*.longitude);
var latLng:LatLng = new LatLng(tabMarkers*.latitude, tabMarkers*.longitude);
map.addOverlay(new Marker(latLng));
}
}
}
}
XML file:
<?xml version="1.0" encoding="UTF-8"?>
<site>
<point>
<lat>45.538</lat>
<long>-74.56</long>
</point>
<point>
<lat>45.265</lat>
<long>-74.86</long>
</point>
</site>