ロックやディスパッチグループと関係があることは知っていますが、コーディングできないようです...
メソッドを終了する前に、アドレスが有効なアドレスであったかどうかを知る必要があります。現在、スレッドはオーバーランしてTRUEを返します。私はロックを試しましたが、ディスパッチャは機能しますが、正しく取得できないようです。感謝する助け:
- (BOOL) checkAddressIsReal
{
__block BOOL result = TRUE;
// Lets Build the address
NSString *location = [NSString stringWithFormat:@" %@ %@, %@, %@, %@", streetNumberText.text, streetNameText.text, townNameText.text, cityNameText.text, countryNameText.text];
// Put a pin on it if it is valid
CLGeocoder *geocoder = [[CLGeocoder alloc] init];
[geocoder geocodeAddressString:location
completionHandler:^(NSArray* placemarks, NSError* error) {
result = [placemarks count] != 0;
}];
return result;
}