So I've been trying to detect click events to a MapView
in order to start a method with the click.
Trying any variation of standard onClickListener
or onTouch
were no good.
I do not want to add an overlay of to "catch" clicks on a certain part of the map. I want the map to continue to be responsive to drag,zooms, etc.
Any help would be appreciated.
So, apparently the solution is quite simple. I guess it was added in one of the last support libs. GoogleMap now supports onMapClick.
mMapView.getMap().setOnMapClickListener(new OnMapClickListener()
{
@Override
public void onMapClick(LatLng arg0)
{
android.util.Log.i("onMapClick", "Horray!");
}
});
In the new version of Google Play services, you should call the method after the map is ready, at the onMapReady(GoogleMap map);
callback.
@Override
public void onMapReady(GoogleMap googleMap) {
googleMap.setOnMapClickListener(new GoogleMap.OnMapClickListener()
{
@Override
public void onMapClick(LatLng arg0)
{
android.util.Log.i("onMapClick", "Horray!");
}
});
}
public class MapView implements OnMapReadyCallback, GoogleMap.OnMarkerClickListener {
@Override
public boolean onMarkerClick(Marker marker) {
println("click marker");
}
}
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