我有多個方法,每個都有嵌套的循環和facebook請求。有一個X id的數組,每個方法遍歷每個id,爲該id做出請求,然後對結果數據進行處理。如何知道當多個服務器調用嵌套循環的方法已全部完成
我需要在每個方法完成時得到通知...即,當方法完成循環遍歷數組中的所有id時,爲每個方法做出facebook請求,接收結果並完成其結果數據。我似乎無法弄清楚如何做到這一點。這裏是方法的例子:
- (void)runLoopForFacebookFriendsContent1 {
for (NSString *fbIdStr in self.fbIdsArr){
FBRequest *fbRequest = [FBRequest requestWithGraphPath:graphPathString parameters:nil HTTPMethod:@"GET"];
[fbRequest startWithCompletionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
if (error) {
//show alert
} else {
//Do stuff with the resulting data
}
}];
}
}
- (void)runLoopForFacebookFriendsContent2 {
for (NSString *fbIdStr in self.fbIdsArr){
FBRequest *fbRequest2 = [FBRequest requestWithGraphPath:graphPathStringNumber2 parameters:nil HTTPMethod:@"GET"];
[fbRequest2 startWithCompletionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
if (error) {
//show alert
} else {
for (PF_FBGraphObject *obj in [result objectForKey:@"data"]){
NSLog(@"facebook result: %@",result);
NSMutableDictionary *dict = [[NSMutableDictionary alloc]init];
[dict setValue:@"type2" forKey:@"ContentType"];
[dict setValue:obj forKey:@"data"];
[self.theFacebookDataArray addObject:dict];
}
}
}];
}
}
我在viewWillAppear中調用這些方法。有沒有辦法設置某種完成處理程序來將這些方法的調用放在裏面?然後在全部完成後發佈NSN通知?
未經評論或解釋而投票棄權的問題???這是有幫助的... – 2013-03-13 01:08:51