1

我有一个iOS应用程序,其中Im在应用程序启动时加载MKMapView。我想将“MKCoordinateRegion”的中心设置为用户的纬度/经度。但是,在加载MKMapView之后,CLLocation Manager实例不会更新用户位置。MKMapView在LocationManager之前获取用户位置 - 无法将Region设置为以用户位置为中心

现在我很难将地图中心坐标编码到应用程序中。但我想知道是否有人可以提出更好的方法来处理这种情况。

我能想到的方法2,但我不是在其中一个风扇:

1)失速使用activityindicator 2)用硬编码位置启动的MKMapView,然后尽快启动的MKMapView用户位置是可用动画的地图视图区域中心在该位置

任何建议?

回答

0

做Apple做的。开始真的很小,可以在屏幕上放置一条消息“扫描位置”,然后当位置信息可用时放大。

+0

你可以给我一个使用这种方法的应用程序的例子吗?谢谢 – banditKing 2013-02-14 20:04:29

+0

苹果的地图程序确实是放大了的东西。 “扫描地点”是我的补充,因为您表示您提出了一个活动指标,我认为最好告诉用户您正在指示什么活动。 – Craig 2013-02-14 21:49:43

+0

啊,我明白了。好的我明白了。谢谢。我喜欢这种方法。 – banditKing 2013-02-14 21:52:18

1

当您转到后台或关闭应用程序时,存储上次已知的纬度/经度。
在开始中心地图视图到最后一个已知位置。
只要位置管理器发送更新的位置,就更新地图中心。

1

mapview的属性设置为MKUserTrackingModeFollow。你不需要位置管理员,mapView就是为你做的。当您稍后要重新定位地图时,请将该属性设置为MKUserTrackingModeNone,然后重新定位您的地图。