我的MKMap上有一个圆形覆盖,用户可以更改半径。如何更改半径时,地图将自动缩放以适应新的半径尺寸。
我试过了:
_mapView.visibleMapRect = circleOverlay.boundingMapRect;
但它放大太远,我的圆圈覆盖周围的笔划在顶部和底部被切断。有人可以帮我解决一下如何解决这个问题吗?
答案 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];