MKLocalsearchRequest附近的地方没有naturalLanguageQuery字符串

时间:2014-09-07 01:18:30

标签: ios mapkit mklocalsearch mklocalsearchrequest

是否可以在不提供naturalLanguageQuery的情况下使用MKLocalSearchRequest显示附近的地方?

我知道典型的路线是使用foursquare或google。我已经同时使用过它们。

2 个答案:

答案 0 :(得分:0)

我一直试图实现这一点,但最接近的是使用for循环运行多个查询并将结果添加到主数组。显然效率低下,你有没有更大的成功?

答案 1 :(得分:0)

您可以按以下说明进行演示,但我建议在生产应用中使用此方法,因为它显然不可可扩展。

var nearbyPlaces: [MKMapItem] = []
let params: [String] = ["bar", "shop", "restaurant", "cinema"]
let request = MKLocalSearchRequest()
let span = MKCoordinateSpan(latitudeDelta: CLLocationDegrees(exactly: 1000)!, longitudeDelta: CLLocationDegrees(exactly: 1000)!)
let region = MKCoordinateRegion(center: coord, span: span)
request.region = region

for param in params {

        request.naturalLanguageQuery = param    
        let places = MKLocalSearch(request: request)
        places.start { [unowned self] response, error in
           guard let result = response else { return }
           self.nearbyPlaces.append(contentsOf: result.mapItems)
        }

}