0

ユーザーから 2 つの場所を取得する iPhone アプリを開発しています。ジオコードを 2 回繰り返し実行したいのですが、私のコードは最初のジオコードを実行しますが、2 番目のジオコードは実行しません。

今のところ for ループは使用していません。ジオコードを 2 回実行して、座標を 2 つの異なる UILabels に出力したいだけです。

私は何が欠けていますか?

- (IBAction)fetchCoordinates:(id)sender {
if (!self.geocoder) {
    self.geocoder = [[CLGeocoder alloc] init];
}

NSString *address1 = [NSString stringWithFormat:@"%@", self.yourLocation.text];
NSString *address2 = [NSString stringWithFormat:@"%@", self.theirLocation.text];

[self.geocoder geocodeAddressString:address1 completionHandler:^(NSArray *placemarks, NSError *error) {
    if ([placemarks count] > 0) {
        CLPlacemark *placemark = [placemarks objectAtIndex:0];
        CLLocation *location = placemark.location;
        CLLocationCoordinate2D coordinate = location.coordinate;

    self.coordinatesLabel1.text = [NSString stringWithFormat:@"%f, %f", coordinate.latitude, coordinate.longitude];
    }
}];

[self.geocoder geocodeAddressString:address2 completionHandler:^(NSArray *placemarks, NSError *error) {
    if ([placemarks count] > 0) {
        CLPlacemark *placemark = [placemarks objectAtIndex:0];
        CLLocation *location = placemark.location;
        CLLocationCoordinate2D coordinate = location.coordinate;

    self.coordinatesLabel2.text = [NSString stringWithFormat:@"%f, %f", coordinate.latitude, coordinate.longitude];
    }
}];

}

@end
4

0 に答える 0