Cómo obtener el centro del mapa para v2 android mapas?

En Google Maps para Android v1 , MapView tenía un método de conveniencia: getMapCenter() . Ahora no puedo averiguar cómo obtener el centro del mapa con v2 de este api. He examinado la documentación de la API, pero no hay mención de tal característica. Por favor avise.

Gracias, Igor

Yo tuve el mismo problema. Parece que puedes conseguir el centro de esta manera:

 mMap.getCameraPosition().target 

Donde mMap es la instancia de GoogleMap de su actividad. Esto devolverá un objeto LatLng que básicamente representa el centro del mapa.

Tenga en cuenta que la clase GeoPoint ya no está disponible.

Según http://developer.android.com/reference/com/google/android/gms/maps/model/CameraPosition.html

Target es "La ubicación a la que está apuntando la cámara". (Lo probé con el código de la muestra y funcionó bien para mí)

He encontrado dos maneras de hacer esto:

1) El más fácil, El primero está utilizando la propiedad de destino en el objeto CameraPosition del mapa

  LatLng center = mMap.getCameraPosition().target; 

2) El segundo es usar un objeto VisibleRegion:

 VisibleRegion visibleRegion = mMap.getProjection() .getVisibleRegion(); Point x = mMap.getProjection().toScreenLocation( visibleRegion.farRight); Point y = mMap.getProjection().toScreenLocation( visibleRegion.nearLeft); Point centerPoint = new Point(xx / 2, yy / 2); LatLng centerFromPoint = mMap.getProjection().fromScreenLocation( centerPoint); 

He comparado ambas respuestas:

 Log.d("MapFragment: ", "Center From camera: Long: " + center.longitude + " Lat" + center.latitude); Log.d("Punto x", "x:" + xx + "y:" + xy); Log.d("Punto y", "y:" + yx + "y:" + yy); Log.d("MapFragment: ", "Center From Point: Long: " + centerFromPoint.longitude + " Lat" + centerFromPoint.latitude); 

Para obtener el centro del mapa He utilizado el método onMapReady () en la actividad, a continuación, utiliza el googleMap.setOnCameraChangeListener() method to get position of Came :

 @Override public void onMapReady(GoogleMap googMap) { googleMap.setOnCameraChangeListener(new GoogleMap.OnCameraChangeListener() { @Override public void onCameraChange(CameraPosition cameraPosition) { Log.i("centerLat",cameraPosition.target.latitude); Log.i("centerLong",cameraPosition.target.longitude); } }); } 

Puede utilizar: latlng = map.getProjection (). GetVisibleRegion (). LatLngBounds.getCenter ();

  • Google Maps de Google - Error al inflar el fragmento de clase
  • Cómo mostrar la ubicación actual como flecha en Google Maps Android API V2?
  • Error java.lang.ClassNotFoundException: com.google.android.gms.maps.MapFragment en Google Map V2
  • La aplicación comienza a buscar el GPS justo al iniciar la aplicación, no cuando es necesario
  • Influenciar el tamaño de mosaico en Android Maps TileProvider?
  • Google Maps API V2 desaparecidos de google-play-services_lib.jar
  • Esta aplicación no se ejecutará a menos que actualice Google Play Services.
  • Error en la API de v2 de la API de mapa
  • Google Map API V2 - ¿Cómo puedo mantener un marcador en el centro de la pantalla mientras el usuario está desplazando el mapa?
  • Agregar una imagen de url a InfoWindow personalizado google maps v2
  • Android Google Maps v2 Animación de la cámara
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.