【发布时间】:2014-10-17 01:37:36
【问题描述】:
我正在尝试在我的MKMapView 上放置所有注释,同时将当前用户位置保持在地图中心。
已经有很多关于如何缩小区域以适应地图上的注释的参考[1][2],但它们会调整当前的中心位置,例如如果所有注释都位于我当前用户位置的东边,它将进行调整,使当前用户位置向地图左侧移动。
如何缩小我的地图,使其适合显示的所有注释,但保持用户当前位置在地图中心?
参考:
[1]Zooming MKMapView to fit annotation pins?
[2]- (void)showAnnotations:(NSArray *)annotations animated:(BOOL)animated NS_AVAILABLE(10_9, 7_0);
【问题讨论】:
-
尝试以下操作:获取从用户位置到注释的最大距离。然后使用 MKCoordinateRegionMakeWithDistance 设置一个以用户位置为中心的区域,其纬度/经度距离为 maximumDistance*2。
-
这是个好主意,我昨天也得出了同样的结论,但我不确定
MKCoordinateRegionMakeWithDistance的变量,因为它们同时采用latitudinalMeters和longitudinalMeters,我是目前只是设置为相同,但我不确定您是否可以轻松做到这一点。我会在几分钟后发布我的方法。 -
是的,您可以将两者作为相同的值传递,地图视图将根据视图的比例和它可以显示的缩放级别自动调整。
标签: ios iphone mkmapview mkuserlocation