MKLocalSearch找不到附近的所有餐馆

时间:2015-03-28 20:44:37

标签: ios objective-c mkmapview mklocalsearch mklocalsearchrequest

我在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];

 }];
}       

1 个答案:

答案 0 :(得分:4)

因为虽然我已经问过这个问题已经有一段时间了,但我还是想解决,因为我认为我应该这样做。在stackoverflow和apple开发者论坛上遇到各种链接之后,似乎内置的MKLocalSearch方法仅限于返回10个结果。然而,Google Maps API最多可以返回60个结果。因此,我担心我的问题的答案是

,您无法让MKLocalSearch方法返回与特定naturalLanguageQuery关键字绑定的区域内的10个以上位置。