これは私の最初のスタック投稿です。私はiOS開発に不慣れで、ジオコーディングのサポートが必要です。
特に、Appleのドキュメントによると、「返される目印オブジェクトの数は、提供される情報の特異性に大きく依存します。したがって、通り、市、県、国の情報を提供すると、通りや市の情報。」
したがって、アドレス文字列を提供するときに広範であると、(理論的には)複数の結果が返されるはずです。
例:
-(void)geocodeAddress {
CLGeocoder *geocoder = [[CLGeocoder alloc]init];
[geocoder geocodeAddressString:@"DMV, San Francisco, CA" completionHandler:^(NSArray *placemarks, NSError *error) {
if (!error) {
NSLog(@"Found: %i", [placemarks count]);
for (CLPlacemark *placemark in placemarks) {
CLLocationCoordinate2D coordinate = CLLocationCoordinate2DMake(placemark.location.coordinate.latitude, placemark.location.coordinate.longitude);
MapAnnotation *annotation = [MapAnnotation mapAnnotationWithCoordinate:coordinate title:@"DMV" subtitle:@"Great service?"];
[self.mapView addAnnotation:annotation];
}
} else {
NSLog(@"Error code: %i", [error code]);
}
}];
}
私にとって少し紛らわしいのは、私の「検索」がどれほど広いか(スターバックス、DMV、対1234 S 312位、都市、州)に関係なく、常に1つの場所が返されることです。
だから、私の質問は、特定の検索に対して複数の結果を返す方法はありますか?