java - tipos - map fragment android studio
Mostrar siempre el tÃtulo del marcador del mapa en Android (4)
Es muy fácil:
locationMarker.showInfoWindow();
Estoy agregando Marker predeterminado a GoogleMap de la siguiente manera:
GoogleMap map = ((MapFragment) getFragmentManager().findFragmentById(R.id.editMapMap)).getMap();
MarkerOptions markerOptions = new MarkerOptions();
markerOptions.position(currentLocation.getCoordinate());
markerOptions.title(Utils.getLocationString(currentLocation.getCoordinate()));
markerOptions.snippet("Blah");
locationMarker = map.addMarker(markerOptions);
locationMarker.setDraggable(true);
¿Cómo puedo hacer que el marcador siempre muestre el título y el fragmento sin tocar? También me gustaría desactivar ocultarlos al tacto.
Hay dos métodos para mostrar y ocultar los marcadores. El valor de retorno booleano simplemente evita que se produzca el comportamiento predeterminado (falso) o permite que suceda (verdadero). En otras palabras, informa al sistema si consumió el evento o no. Ver la referencia de la API de Google .
private GoogleMap.OnMarkerClickListener onMarkerClickedListener = new GoogleMap.OnMarkerClickListener() {
@Override
public boolean onMarkerClick(Marker marker) {
if (marker.isInfoWindowShown()) {
marker.hideInfoWindow();
} else {
marker.showInfoWindow();
}
return true;
}
};
mGoogleMap.setOnMarkerClickListener(onMarkerClickedListener);
Simplemente devuelva falso para onMarkerClickListener
, si devuelve true, se muestra la infoWindow
.
Para ocultar el título cuando hacemos clic en el marcador:
map.setOnMarkerClickListener(this);
...
@Override
public boolean onMarkerClick(Marker arg0) {
Log.i(TAG,"marker arg0 = "+arg0);
return false;
}
Si devolvemos el título verdadero se mostrará, de lo contrario si devolvemos el título falso no se mostrará.
use showInfoWindow()
y agregue marcador como abajo.
Marker marker = mMap.addMarker(new MarkerOptions().position(currentPosition).title("Your text"));
marker.showInfoWindow();