I have an old gmaps application using V2 and I am trying to update it to v3.
I have a really simple problem, but I can't find a solution yet.
How can I strip the latitude and the longitude from the "event.latLng"?
It is returning a point()
, but I need only the lat alone and the long for itself.
I cant get this to work.
setOnMapClickListener(new OnMapClickListener() { @Override public void onMapClick(LatLng latln) { // TODO Auto-generated method stub String s=latln. toString(); Log. w("dsfdsf",""+s); } }); It provides be the latitude and longitude coordinates in the format lat/lng: (xx.
According to the API for MouseEvents
, event.latLng
contains a LatLng
, not a Point
. If this is the case then you can use the lat()
and lng()
methods to get the values separately. If event.latLng
is actually a Point
then you can directly access the coordinates using the x
and y
properties (not methods).
What type of listener is creating the event?
Edit: there's an example in the tutorial of how to do what you want. It looks like you're following this already. Did you remember to include the actual placeMarker()
function declaration?
function placeMarker(location) { var clickedLocation = new google.maps.LatLng(location); var marker = new google.maps.Marker({ position: location, map: map }); map.setCenter(location); }
Or are you not interested in placing a marker, and just want to get the lat and lng values? In that case, all you need is:
google.maps.event.addListener(map, 'click', function(event) { var myLatLng = event.latLng; var lat = myLatLng.lat(); var lng = myLatLng.lng(); })
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With