J'ai une vue Table à trois colonnes remplie par deux NSMutableDictionaries qui partagent les mêmes clés (ie | key1 | value2) avec dict1 (clé, valeur1) et dict2 (clé, valeur2). Je souhaite entrer manuellement les données dans la troisième colonne et créer les objets clé/valeur dans dict2. Mais quand je fais ça, mon code prend la mauvaise clé: SRécupération des données dans un NSTableView
Voici le code pour le délégué:
- (void)tableView:(NSTableView *)aTableView setObjectValue:(id)anObject forTableColumn:(NSTableColumn *)aTableColumn row:(NSInteger)rowIndex
{
if ([[aTableColumn identifier] isEqualToString:@"value2"])
{
[dict2 setValue:anObject forKey:[[[aTableView tableColumnWithIdentifier:@"key"] dataCellForRow:rowIndex] stringValue ]];
}
}
Toute idée?
EDIT: Je veux compléter ma question: comment pouvez-vous récupérer les données affichées dans une cellule? Je ne vois pas d'autre moyen d'utiliser NSMutableDictionnaries avec TableViews, car [dict allKeys] ne donne pas les clés dans le même ordre que celui utilisé pour l'afficher! Et stocker une version de [dict allKeys] semble redondant et stupide.