0

我会有一个坐标,例如,我需要检查它是否距离任何一家梅西百货或沃尔玛商店都在半英里之内。有没有办法在不存储每个沃尔玛/梅西百货商店的坐标的情况下做到这一点,而只需使用“沃尔玛”或“梅西百货”的关键字?

4

1 回答 1

0

您可以使用MKLocalSearch. 请注意,如果您要同时搜索 Macy's 和 Walmart's,您将使用两个不同的搜索对象进行两次搜索,因为正如文档所述:

对象启动基于MKLocalSearch地图的搜索操作并将结果异步传递回您的应用程序。搜索对象旨在仅执行一种搜索操作。要执行几个不同的搜索,您必须创建此类的单独实例并单独启动它们。

无论如何,基本代码看起来像:

// create new search request

MKLocalSearchRequest *request = [[MKLocalSearchRequest alloc] init];
request.naturalLanguageQuery = @"Walmart";
request.region = mapView.region; // or create your `region` manually if not using a map

// initiate new search

MKLocalSearch *localSearch = [[MKLocalSearch alloc] initWithRequest:request];

[localSearch startWithCompletionHandler:^(MKLocalSearchResponse *response, NSError *error) {
   for (MKMapItem *item in response.mapItems) {

        // do whatever you want with the results
    }];
}];
于 2013-10-12T19:53:41.447 回答