我在mkmapview的某个区域内实现了一个MKLocalSearch,它返回该区域内的一系列餐馆。通过研究,只展出了10家餐厅。有没有办法让MKLocalSearch可以在一个地区内返回超过10家餐厅?这是代码,
MKLocalSearchRequest *request = [[MKLocalSearchRequest alloc]init];
request.naturalLanguageQuery = @"restaurant";
request.region = midRegion;
MKLocalSearch *localSearch = [[MKLocalSearch alloc]initWithRequest:request];
[localSearch startWithCompletionHandler:^(MKLocalSearchResponse *response, NSError *error) {
NSMutableArray *annotations = [NSMutableArray array];
[response.mapItems enumerateObjectsUsingBlock:^(MKMapItem *item, NSUInteger idx, BOOL *stop){
CustomAnnotation *annotation = [[CustomAnnotation alloc] initWithPlacemark:item.placemark];
annotation.title = item.name;
annotation.subtitle = item.placemark.addressDictionary[(NSString *)kABPersonAddressStreetKey];
annotation.phone = item.phoneNumber;
[annotations addObject:annotation];
}];
[self.mapView addAnnotations:annotations];
}];
}
答案 0 :(得分:4)
因为虽然我已经问过这个问题已经有一段时间了,但我还是想解决,因为我认为我应该这样做。在stackoverflow和apple开发者论坛上遇到各种链接之后,似乎内置的MKLocalSearch方法仅限于返回10个结果。然而,Google Maps API最多可以返回60个结果。因此,我担心我的问题的答案是
否,您无法让MKLocalSearch方法返回与特定naturalLanguageQuery关键字绑定的区域内的10个以上位置。