如何在iphone中获取地图上的动态位置方向

时间:2011-04-12 05:09:48

标签: iphone objective-c mapkit

我正在创建一个地图应用程序。我希望当一个人从他当前的位置旅行到其他位置同时应该同时在地图上绘制。这是可能的。如果有人有关于此的源代码请提供我。 感谢。

4 个答案:

答案 0 :(得分:2)

以下是您需要做的事情:

您想要显示地图,因此您需要添加Mapkit框架并将其导入。添加MKMapView并获取对它的引用(这样您就可以调整地图中心和区域)。

由于您要跟踪用户的位置,请添加CoreLocation框架并将其导入。在您的视图控制器中,创建一个新的CLLocationManager,设置它的相关属性(因为您正在跟踪助行器,您需要高精度,大约10-20米)。将视图控制器设置为CLLocationManagerDelegate并实施–locationManager:didUpdateToLocation:fromLocation:。在这里,您将获得有关用户位置的信息。您可能希望根据时间戳,准确度或其他事项对其进行过滤。

每次获取位置读数时,请将其存储在数组中。如果您发现读数太多,请使用计时器将读数限制为每隔几秒钟。您还应该设置地图的区域,使其以新位置为中心。

您可以通过多种方式在地图上显示这些点。简单的方法是使用MKAnnotationannotations对象添加到mapView的addAnnotation:数组中。您可能想要创建一个注释视图,它只是一个小点,而不是引脚。

第二种方法是学习如何使用MKOverlay,尤其是MKPolyline,它会在地图上画一条线。

答案 1 :(得分:0)

为了绘制路线,最简单的方法是使用MKPolyline类,这非常简单。唯一的事情是它只适用于iOS SDK 4.0。如果您希望它与iOS 3兼容,则应使用MKAnnotation协议和MKAnnotationView类。这有点复杂但幸运的是很容易找到帮助。我发现的最好的教程是this one。看看吧。

我希望这有助于你

答案 2 :(得分:0)

@ iPhoneFun的回答是正确的。要添加,您还可以浏览MKMapView参考,其中包含用于绘制用户位置的信息。检查属性userLocationshowsUserLocationuserLocationVisible

答案 3 :(得分:-1)

iPhone的GPS充满电,它将自动识别当前位置。

如果您想检查,那么只需将您的办公室搬到其他地方,即使Wi-Fi和Sim卡不可用,GPS仍会显示完美的位置,并为您提供精确的纬度和经度。 / p>

您可以使用This Code并使用iPhone的GPS获取当前位置。

希望这就是你所需要的。