我通常在我的MKMapView
. 我有不同位置的引脚,代码自动居中并根据最大值和最小值设置跨度。但是,我注意到当我添加越来越多的点时,我的地图会缩小到一定程度,而我会丢失边缘的东西。这里有一些照片:
这是我第一次加载 MKMapView 时的样子:
(来源:grapekeeper.com)
当我平移时,我可以看到原始视图中丢失的更多图钉:
(来源:grapekeeper.com)
当我捏紧模拟器时,它会尽可能缩小:
(来源:grapekeeper.com)
这是我的代码供参考:
double min = [[allLatitudes valueForKeyPath:@"@min.self"] doubleValue];
double max = [[allLatitudes valueForKeyPath:@"@max.self"] doubleValue];
double latSpan = max-min;
double minL = [[allLongitudes valueForKeyPath:@"@min.self"] doubleValue];
double maxL = [[allLongitudes valueForKeyPath:@"@max.self"] doubleValue];
double lonSpan = maxL-minL;
double avgLatitude = (max+min)/2;
double avgLongitude = (maxL+minL)/2;
overallRegion.center.latitude = avgLatitude;
overallRegion.center.longitude = avgLongitude;
overallRegion.span.latitudeDelta = latSpan;
overallRegion.span.longitudeDelta = lonSpan;
[self.mapView setRegion:overallRegion animated:YES];