我编写了以下代码来找出国家列表的坐标。
int count=[objCountries.countryName count];
CLGeocoder *geoCode = [[CLGeocoder alloc] init];
for(int i=0;i<count;i++)
{
NSString *strCountry=[[NSString alloc]initWithString:[objCountries.countryName objectAtIndex:i]];
[geoCode geocodeAddressString:strCountry completionHandler:^(NSArray *placemarks, NSError *error)
{
if (!error)
{
CLPlacemark *place = [placemarks objectAtIndex:0];
CLLocation *location = place.location;
CLLocationCoordinate2D coord = location.coordinate;
NSString *tempLati=[[NSString alloc]initWithFormat:@"%g",coord.latitude];
NSString *tempLongi=[[NSString alloc]initWithFormat:@"%g",coord.longitude];
NSLog(@"-------------------------");
NSLog(@"Country : %@",strCountry);
NSLog(@" Latitude : %@ ",tempLati);
NSLog(@" Longitude : %@ ",tempLongi);
[objCountries.countryLatitude addObject:tempLati];
[objCountries.countryLongitude addObject:tempLongi];
[db insertAsiaCountry:strCountry :tempLati :tempLongi];
}
}];
}
}
在我的 countryName 数组中,有 20 个对象可用
问题: 仅第一次运行良好。但是第二次 for 循环执行 [geocode geo....] 方法时没有调用。我不明白该怎么办?请帮忙。谢谢你,先生。