Проще всего сделать это в -viewDidLoad
:
NSMutableArray *allObjects = [[NSMutableArray alloc] init];
[allObjects addObjectsFromArray:sortedOne];
[allObjects addObjectsFromArray:sortedTwo];
[allObjects addObjectsFromArray:sortedThree];
Также вы можете получить их из словарей аналогичным образом:
NSMutableArray *allObjects = [[NSMutableArray alloc] init];
[allObjects addObjectsFromArray:[[listaOggetti objectAtIndex:0] objectForKey@"Elementi"];
[allObjects addObjectsFromArray:[[listaOggetti objectAtIndex:1] objectForKey@"Elementi"];
[allObjects addObjectsFromArray:[[listaOggetti objectAtIndex:2] objectForKey@"Elementi"];
Что вы не понимаете, так это то, что listaOggetti
- это NSMutableArray
, содержащий три объекта. Когда вы звоните
NSDictionary *dict = [listaOggetti objectAtIndex:indexPath.section];
В результате dict
представляет собой один словарь, один из трех объектов в listaOggetti
. Поэтому, когда вы звоните
NSArray *array = [dict objectForKey:@"Elementi"];
В результате array
является объектом для ключа @"Elementi"
этого единственного словаря dict
. Ваш код не пытается объединить три РАЗЛИЧНЫХ словаря или объединить три массива, каждый из которых установлен как objectForKey:@"Elementi"
для трех РАЗЛИЧНЫХ словарей.
Если вам нужен один массив, который является объединением всех трех разных массивов, используйте один из приведенных выше фрагментов. В обоих этих фрагментах результат allObjects
- это NSMutableArray
, содержащий все три массива по порядку.