Android Map Enlarge to show all contacts

I have 5 contacts added to the map. How can I show MapView as large as possible and keep all the contacts in view?

+6
android android-mapview
source share
2 answers

I used this method in a recent project of my

public void centerOverlays() { int minLat = 81 * MapStoresController.MAP_SCALE; int maxLat = -81 * MapStoresController.MAP_SCALE; int minLon = 181 * MapStoresController.MAP_SCALE; int maxLon = -181 * MapStoresController.MAP_SCALE; for (int i = 0; i < overlayItems.size(); i++) { Store s = overlayItems.getItem(i).getStore(); minLat = (int) ((minLat > (s.getLocation().getLatitude() * MapStoresController.MAP_SCALE)) ? s.getLocation().getLatitude() * MapStoresController.MAP_SCALE : minLat); maxLat = (int) ((maxLat < (s.getLocation().getLatitude() * MapStoresController.MAP_SCALE)) ? s.getLocation().getLatitude() * MapStoresController.MAP_SCALE : maxLat); minLon = (int) ((minLon > (s.getLocation().getLongitude() * MapStoresController.MAP_SCALE)) ? s.getLocation().getLongitude() * MapStoresController.MAP_SCALE : minLon); maxLon = (int) ((maxLon < (s.getLocation().getLongitude() * MapStoresController.MAP_SCALE)) ? .getLocation().getLongitude() * MapStoresController.MAP_SCALE : maxLon); } GeoPoint gp = controller.getUserLocation(); minLat = (minLat > gp.getLatitudeE6()) ? gp.getLatitudeE6() : minLat; maxLat = (maxLat < gp.getLatitudeE6()) ? gp.getLatitudeE6() : maxLat; minLon = (minLon > gp.getLongitudeE6()) ? gp.getLongitudeE6() : minLon; maxLon = (maxLon < gp.getLongitudeE6()) ? gp.getLongitudeE6() : maxLon; mapView.getController().zoomToSpan((maxLat - minLat), (maxLon - minLon)); mapView.getController().animateTo(new GeoPoint((maxLat + minLat) / 2, (maxLon + minLon) / 2)); } 

Basically, he simply finds the boundaries of the field and sets the view to the closest that spans

+10
source share

it's a lot easier if you use ItemizedOverlay

  public void fitOverlays() { mMapView.getController().zoomToSpan(mItemizedOverlay.getLatSpanE6(), mItemizedOverlay.getLonSpanE6()); } 
+26
source share

All Articles