6

我想制作一个部分模仿标准地图应用程序的某些行为的应用程序。这已被证明是困难的。首先,我不明白您如何使注释可移动。你到底是怎么做到的?

第二:你如何搜索位置?

4

2 回答 2

15

移动注释

我假设您正在关注 Maps.app 的行为,您可以在其中点击并按住图钉以自由移动它。据我所知,没有内置的移动注释的方式。由于注释是UIView虽然的子类,因此您可以在您喜欢的位置和方式上绘制它们。例如,您可以检测到注释上的点击-n-按住,并在“解锁”时更改centerOffset注释的值以通过触摸移动它。当用户放开视图时,您可以记录屏幕上的位置,并使用该MKMapView方法convertPoint:toCoordinateFromView:获取 pin 被释放的坐标。

搜索位置

您正在寻找的是所谓的正向地理编码。不幸的是,MapKit 只带有反向地理编码(将 GPS 坐标转换为国家/城市/街道/等的过程)。然而,有几种选择。这里有几个方法:

请注意,许多地理编码 API 是在知识共享或类似许可下获得许可的。

于 2010-05-14T17:45:31.310 回答
3

在这篇博文的帮助下,您应该能够获得拖放注释。我用它来做同样的事情,而且很容易上手。

MapKit 注释拖放与标注信息更新

于 2010-05-19T01:50:33.570 回答