Я просматриваю NSMutableArray словаря и запрашиваю у WebService информацию из каждой информации.Добавление NSMutableDictionary's в NSMutableArray
Проблема в том, что после получения данных мне нужно обновить 2 ключа одного и того же массива словаря, и когда я добавил объект, массив будет пустым.
Что не так?
PS: использование ARC
NSMutableArray* arrayOfDicts = [NSMutableArray arrayWithObjects:
[NSMutableDictionary dictionaryWithObjectsAndKeys:
@"2013",@"year",
@"a1beb511-7fe1-434b-ab87-a0d02fb47713",@"yearTB",
@"",@"receita_arrecadada",
@"",@"receita_prevista_atualizada",
nil],
[NSMutableDictionary dictionaryWithObjectsAndKeys:
@"2012",@"year",
@"5d20f841-d790-4671-ae26-505c9a8c7f76",@"yearTB",
@"",@"receita_arrecadada",
@"",@"receita_prevista_atualizada",
nil],
nil];
__block NSMutableArray* arrayTemp = [[NSMutableArray alloc] init];;
__block NSMutableDictionary* dicTemp;
for(dicTemp in arrayOfDicts){
NSString* year = [dicTemp objectForKey:@"year"];
NSString* yearTB = [dicTemp objectForKey:@"yearTB"];
NSMutableDictionary *newDict = [[NSMutableDictionary alloc] init];
[RequestFacade getReceiptsTotalInYear:[NSString stringWithFormat:@"%@", yearTB] andCompletion:^(Receipt *receipt) {
//NSLog(@"%@",receipt.receita_arrecadada); // Print the correct actual value
[newDict addEntriesFromDictionary:dicTemp];
[newDict setObject:year forKey:@"year"];
[newDict setObject:yearTB forKey:@"yearTB"];
[newDict setObject:receipt.receita_arrecadada forKey:@"receita_arrecadada"];
[newDict setObject:receipt.receita_atualizada forKey:@"receita_atualizada"];
[arrayTemp addObject:newDict];
NSLog(@"%@", arrayTemp); // shows me the array of dicts
// until here, its ok!
}];
}
NSLog(@"%@", arrayTemp); // shows me an empty array...F*CK!
Сначала инициализируйте arrayOfDict. – iProgrammer