我有一个iOS应用程序,我在应用程序启动时加载MKMapView。我想将“MKCoordinateRegion”的中心设置为用户纬度/经度。但是,在加载MKMapView之前,CLLocation Manager实例不会更新用户位置。
目前我正在将地图中心坐标硬编码到应用程序中。但我想知道是否有人能提出更好的方法来处理这种情况。
我可以想到两种方法,但我不喜欢它们中的任何一种:
1)使用activityindicator停止启动MKMapView 2)使用硬编码位置启动MKMapview,然后只要用户位置可用,就可以为mapview区域设置动画,使其位于该位置的中心位置
有什么建议吗?
答案 0 :(得分:1)
当您转到后台或应用关闭时,存储最后一个已知的纬度/经度 在起始中心地图视图上显示最后的已知位置 位置管理员发送更新后的位置后,立即更新地图中心。
答案 1 :(得分:1)
将userTrackingMode
的{{1}}属性设置为mapview
。您不需要位置管理员,MKUserTrackingModeFollow
为您完成此操作。如果您以后想要重新定位地图,请将该属性设置为mapView
,然后重新定位地图。
答案 2 :(得分:0)
做Apple的工作。开始真的远远缩小,可能会在屏幕上显示“扫描位置”,然后当位置信息可用时放大。