如何获取地理编码搜索结果,如 iOS 地图



我想知道请求是什么样子的,或者哪个类用于获取诸如使用Apple Maps搜索之类的结果?我试过:

[geocoder geocodeAddressString:text
                 completionHandler:^(NSArray *placemarks, NSError *error)

这似乎只给出了一个结果。

   MKLocalSearch *search = [[MKLocalSearch alloc] initWithRequest:request];
[search startWithCompletionHandler:^(MKLocalSearchResponse *response, NSError *error)

像当地商店等一样回馈。

我怎样才能得到结果,比如你输入几个字母,你得到10个最匹配的城市?

它的方式如上所述。最后,我使用谷歌地图API搜索来获得我正在寻找的前10个结果。

对于地理编码部分: MKLocalSearch 返回 MKMapItems 的列表 每个 MKMapItem 都可以通过调用 mapItem.placemark 来访问 MKPlacemark

这是它变得很酷的地方,在地标中您可以访问地址字典。在地址字典中,您可以找到各种地理详细信息,例如地址,格式化地址,地区,国家等。

MKLocalSearch使用.naturalLanguageQuery来搜索其数据库。此设置的问题在于,它将根据您当前(或指定)的位置返回前 10 名,这使得诸如"城市"之类的搜索非常困难。希望这有帮助!

相关内容

  • 没有找到相关文章

最新更新