J'ai un NSMutableArray qui contient un objet d'un modèle de classe dans chaque position comme celle-ci. Le modèle de classe contient 2 types d'informations, que nous appellerons id et nom. Ainsi, dans chaque emplacement de mon NSMutableArray j'ai un objet qui contient 2 informations.Élément de groupe dans NSMutableArray contenant l'objet
Puis, dans la première position de mon NSMutableArray je
{
id = 1;
name = "Dan"; //this is the first object in NSMutableArray
}
Dans la deuxième position de NSMutableArray, je:
{
id = 1;
name = "Luca";
}
Dans la troisième position
{
id = 2;
name = "Tom";
}
et ainsi de suite ..
Ok, mon but est de faire l'union des ID identiques entre les différents objets dans le SNMutableArray mais c'est trop difficile!
Par exemple, si j'ai:
{
id = 1;
name = "Tom";
}
{
id = 1;
name = "Luca";
}
{
id = 2;
name = "Steve";
}
{
id = 2;
name = "Jhon";
}
{
id = 3;
name = "Andrew";
}
L'objectif est:
{
id = 1;
name = "Tom";
name = "Luca";
}
{
id = 2;
name = "Steve";
name = "Jhon";
}
{
id = 3;
name = "Andrew";
}
Toutes les idées? voudrait utiliser dans la méthode cellForRowAtIndexPath et j'ai essayé d'écrire ceci: (cm est mon modèle de classe et monTableau est le NSMutableArray qui contient un objet de classe cm)
ClassModel *cm = [myArray objectAtIndex:indexPath.row];
NSMutableArray * resultArray = [NSMutableArray new];
NSArray * groups = [array valueForKeyPath:cm.ID];
for (NSString * groupId in groups)
{
NSMutableDictionary * entry = [NSMutableDictionary new];
[insert setObject: groupId forKey: @ "groupId"];
NSArray * groupNames = [array filteredArrayUsingPredicate: [NSPredicate predicateWithFormat: @ "groupId =% @", groupId]];
for (int i = 0; i <groupNames.count; i ++)
{
NSString * name = [[groupNames objectAtIndex: i] objectForKey: @ "name"];
[entry setObject: name forKey: [NSS string stringWithFormat: @ "name% d", i + 1]];
}
[resultArray addObject: entry];
}
NSLog (@ "% @", resultArray);
Mais cela ne work..maybe pas parce que chaque élément de mon tableau est un objet ?? .. Aidez-moi!
Merci pour la réponse! Je n'ai qu'une seule question: qu'est ce que 'GroupClassModel * gcm'? Je ne comprends pas –
C'est une nouvelle classe d'objets que vous devrez créer et qui aura un tableau pour les noms plutôt qu'une seule chaîne. – Paulw11
Ok, maintenant je comprends! Question finale, si je veux remplacer id avec une chaîne pour le syndicat, ça marche quand même? J'ai un avertissement 'Instance method '-add:' not found (le type de retour par défaut est 'id')' –