2014-01-24 136 views
0

我有一个Google Map,它绘制了一组最接近当前GPS的位置。我如何让地图自动缩放到足以让我看到地图中最近的5个位置(但不是更大)iOS谷歌地图动态缩放

回答

0

这是使用MapKit和MKAnnotations的实现。如果您使用的是Google地图SDK,则只需更改逻辑即可改为使用GMSMarkers和相关的API。

// Zoom Map to Fit Annotation 
    MKMapRect zoomRect = MKMapRectNull; 
    for (id <MKAnnotation> annotation in self.mapView.annotations) { 
     MKMapPoint annotationPoint = MKMapPointForCoordinate(annotation.coordinate); 
     MKMapRect pointRect = MKMapRectMake(annotationPoint.x, annotationPoint.y, 0.1, 0.1); 

     if (MKMapRectIsNull(zoomRect)) { 
      zoomRect = pointRect; 
     } 
     else { 
      zoomRect = MKMapRectUnion(zoomRect, pointRect); 
     } 
    } 

    [self.mapView setVisibleMapRect:zoomRect edgePadding:UIEdgeInsetsMake(0.2, 0.2, 0.2, 0.2) animated:YES];