为什么我的MKMapView不能尽可能地缩小?

时间:2012-08-15 20:19:18

标签: objective-c ios mkmapview xcode4.3

我在MKMapView上添加注释通常没有问题。我有各种位置的引脚,代码自动居中,并根据最大值和最小值设置范围。但是,我注意到当我添加越来越多的点时,我的地图会有一定量缩小以查看,我失去了边缘。这是一些照片:

这是我第一次加载MKMapView时的样子:

http://www.grapekeeper.com/tempcrap/start.png

当我平移时,我可以看到原始视图上丢失的更多引脚:

http://www.grapekeeper.com/tempcrap/start-move.png http://www.grapekeeper.com/tempcrap/start-pan.png

当我在模拟器中捏合时,它会随着缩小而缩小:

http://www.grapekeeper.com/tempcrap/pinch-zoom-out.png

这是我的参考代码:

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];

2 个答案:

答案 0 :(得分:2)

答案是:无法缩小以使用地图视图查看整个世界。

答案 1 :(得分:1)

看起来只是添加一点额外空间并考虑对角线会有所帮助,请参阅What's the best way to zoom out and fit all annotations in MapKit

这提供了一个很好的方法来完成你想要的。