Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone MKMapView和CLLocationManager_Iphone_Objective C_Mkmapview_Cllocationmanager - Fatal编程技术网

Iphone MKMapView和CLLocationManager

Iphone MKMapView和CLLocationManager,iphone,objective-c,mkmapview,cllocationmanager,Iphone,Objective C,Mkmapview,Cllocationmanager,我想使用MKMapView来显示用户当前的位置,使用默认的呼吸蓝针,同时记录用户的移动。当我们启用MKMapView显示用户位置时,我是否可以使用它使用的GPS管理器(不确定这是否是CLLocationManager) 我知道我可以创建自己的CLLocationManager。但这感觉像是给我的应用程序增加了开销,我希望地图和跟踪保持同步 我已经探索了以下想法,但没有成功: 使用[MKMapView showUserLocation:YES]并在userLocation字段中添加KVO。这不起

我想使用MKMapView来显示用户当前的位置,使用默认的呼吸蓝针,同时记录用户的移动。当我们启用MKMapView显示用户位置时,我是否可以使用它使用的GPS管理器(不确定这是否是CLLocationManager)

我知道我可以创建自己的CLLocationManager。但这感觉像是给我的应用程序增加了开销,我希望地图和跟踪保持同步

我已经探索了以下想法,但没有成功:

  • 使用
    [MKMapView showUserLocation:YES]
    并在
    userLocation
    字段中添加KVO。这不起作用,我想知道这是否是因为
    userLocation
    字段是只读的
  • 使用
    [MKMapView showUserLocation:YES]
    ,创建
    MKMapViewDelegate
    ,并在请求用户位置的注释视图时添加跟踪。这不起作用,因为注释视图显然只被请求一次
  • 使用
    CLLocationManager
    并尝试手动添加蓝色pin。不幸的是,我没有在可用的pin类型中找到蓝色pin,因此我尝试手动创建用户注释,但没有成功

有人知道我如何做到这一点,并且仍然从蓝色pin中获益吗?或者,这是我使用
CLLocationManager
并创建自己的pin的唯一解决方案吗?

CLLocationManager
在其所有实例中使用相同的数据
MKMapView
在内部使用
CLLocationManager的
数据。也就是说,解决方案是让
MKMapView
showUserLocation:
执行自己的操作。同时,创建
CLLocationManager
及其委托的实例


学员信息将为您提供
MKMapView的
blue pin的GPS坐标位置。一切都将同步。

谢谢Giao。我想“CLLocationManager在其所有实例中使用相同的数据”是我需要听到的;)您确定CLLocationManager在其所有实例中使用相同的数据吗?如果是这样的话,苹果难道不会让它成为一个类似单例的UIApplication吗?这个答案(接近底部)表明CLLocationManager并不是在所有实例中共享相同的数据。你有可以引用的参考资料吗?很酷,这是我第一次开始使用地图时发布的一个问题的答案。看起来事情并没有太大变化:)我想如果您使用map view,那么如果您坚持使用它,而不是在上面使用CLLocationManager,可能会更好。我想这些值没有太大的不同?在我的应用程序中,我最终使用MKMapView显示用户位置,并使用CLLocationManager记录位置。我注意到MKMapView和CLLocationManager之间的位置有点不同。