MKMapView缩放以适合叠加

时间:2014-05-07 22:23:26

标签: ios mkmapview zoom overlay mkoverlay

我的MKMap上有一个圆形覆盖,用户可以更改半径。如何更改半径时,地图将自动缩放以适应新的半径尺寸。

我试过了:

_mapView.visibleMapRect = circleOverlay.boundingMapRect;

但它放大太远,我的圆圈覆盖周围的笔划在顶部和底部被切断。有人可以帮我解决一下如何解决这个问题吗?

2 个答案:

答案 0 :(得分:9)

尝试:

_mapView.visibleMapRect = [_mapView mapRectThatFits:circleOverlay.boundingMapRect];

甚至mapRectThatFits:edgePadding:以获得边缘附近的额外空间。

答案 1 :(得分:1)

除了David Berry的答案外,这还可以使缩放动画:

[self.mapView setVisibleMapRect:[self.mapView mapRectThatFits:circleOverlay.boundingMapRect] edgePadding:UIEdgeInsetsMake(5.0f, 5.0f, 5.0f, 5.0f) animated:YES];