gpt4 book ai didi

ios - 如何在 for 循环中等待回调方法(或)响应(Xcode、Objective C、iOS)?

转载 作者:行者123 更新时间:2023-11-29 00:18:49 27 4
gpt4 key购买 nike

在我的代码中,我有多个位置,我必须检查所有位置是否正确(使用 google api 检查),如果位置正确,我必须获取该位置的坐标。

我正在尝试在 for 循环中编写代码,有什么方法可以等待 for 循环中的响应。

我正在下面粘贴我的代码。

提前致谢。

for (int locationsCount=0;locationsCount<results.count;locationsCount++)
{
NSString *googlelocations = [[results objectAtIndex:locationsCount]objectForKey:@"description"];

if ([locationAddress isEqualToString:googlelocations])
{
[[LocationManager share] fetchLatLngForPlacename:googlelocations placeId:[[results objectAtIndex:locationsCount] objectForKey:@"place_id"] completion:^(double lat, double lng, NSError *error)
{
[SVProgressHUD dismiss];

if (error) {

}else {

CLLocation *locationCoordinates = [[CLLocation alloc]initWithLatitude:lat longitude:lng];

NSMutableArray *globalArray = [[LocationManager share]getManualInterLocationArray];
NSMutableDictionary *dict = [[globalArray objectAtIndex:selectedTextField.tag] mutableCopy];

[dict setObject:locationCoordinates forKey:@"location_coordinates"];

[dict setObject:googlelocations forKey:@"location_Address"];

[dict setObject:[NSNumber numberWithBool:true] forKey:@"manualEntry_Flag"];

[globalArray replaceObjectAtIndex:selectedTextField.tag withObject:dict];

[[LocationManager share]saveManualInterLocationArray:globalArray];

}

}];
}
}

最佳答案

我对这个要求使用了递归方法,现在它工作正常。递归方法是满足这一要求的最好和最简单的方法。

-(void)addressValidation:(int)locationCount andCompletion:(void(^)(BOOL isSuccess))callBack{
if (manualarraycount >= globalArray.count)
{
callBack(true);
return;
}

[[LocationManager share] fetchOfflineAutoCompleteSuggestionForKey:locationAddress LocationCoordinates:location Radius:duration completion:^(NSArray *results, NSError *error){
// --------- do what you want ------------
[self addressValidation:manualarraycount+1 andCompletion:callBack];
}];

关于ios - 如何在 for 循环中等待回调方法(或)响应(Xcode、Objective C、iOS)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44568410/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com