在 Apple Maps iOS 10 中搜索地点或地址

Posted

技术标签:

【中文标题】在 Apple Maps iOS 10 中搜索地点或地址【英文标题】:Search for a place or address like in Apple Maps iOS 10 【发布时间】:2016-10-13 15:42:56 【问题描述】:

我正在尝试从 MKLocalSearch 重新创建/获取相同的搜索列表,但没有运气。我尝试了许多有关区域、半径、增量的选项。但我的结果不同,而是来自 Apple Maps 应用程序。苹果地图的结果更适合搜索地点的所有想法。

我使用了 MapSearch 应用程序,例如来自 Apple 文档

和选项

MKLocalSearchRequest *request = [[MKLocalSearchRequest alloc] init];
request.naturalLanguageQuery = searchString; 
request.region = MKCoordinateRegionMakeWithDistance(CLLocationCoordinate2DMake(self.userCoordinate.latitude, self.userCoordinate.longitude), 100, 100);

还有很大的不同

更新:

我注意到当我提出更精确的查询时,结果是相同的(如果我输入地点的全名),但我不知道如何像示例中那样使用一个字母找到更多结果

【问题讨论】:

是否尝试增加您的区域? request.region = MKCoordinateRegionMakeWithDistance(CLLocationCoordinate2DMake(self.userCoordinate.latitude, self.userCoordinate.longitude), 2000, 2000);例如 @GIJOW,我试过了,但没有成功 我认为右图中的搜索结果来自地图应用程序的应用程序逻辑,它知道您以前的搜索和许多其他信息。我相信,您必须实现类似的功能才能获得类似的结果。 【参考方案1】:

您可能想尝试 MKLocalSearchCompleter API。这是文档链接。 https://developer.apple.com/reference/mapkit/mklocalsearchcompleter

【讨论】:

以上是关于在 Apple Maps iOS 10 中搜索地点或地址的主要内容,如果未能解决你的问题,请参考以下文章

删除 Apple Maps 默认注释

如何在 iOS 10 中获取 Apple Maps 的“查找我的车”的“停放位置”信息

如何自定义附近地点搜索返回的结果,Google Maps JS API V3

Apple Maps 中 UI 菜单的 iOS 名称

Apple iOS6 地图 - 目的地地址 > 显示公司名称而不是纬度/经度

Apple Maps 和 Google Maps API 的可行性