我想搜索诸如“Apple Store”、“Italian Restaurant”等地点以及诸如“5th Ave, New York, NY, United States”之类的地址。
如何搜索地点并为我找到的每个地点设置 MKPlacemark?
如果您担心 Google Maps API 的请求限制,您可以改用一些开源地图 API,例如 Nominatim API,请查看http://wiki.openstreetmap.org/wiki/Nominatim
从 iOS 6.1 Apple 引入了一个新的搜索 API - MKLocalSearch
. 您创建一个MKLocalSearchRequest
使用字符串和区域进行搜索(该区域只是搜索的提示,它不保证结果会在该区域内)并使用此请求来初始化 a MKLocalSearch
,这会异步为您提供MKLocalSearchResponse
对象中的结果. 它是在一月份才推出的,所以它在这个阶段存在问题——每次搜索只能得到 10 个结果,而且有些结果很奇怪,但绝对值得一试。也无法指定您正在搜索的对象类型(城镇/商业/地标等),这很遗憾。这是一个很酷的教程。请注意,您提供的区域越精确,结果就越好。