0

我有一个由两个 NSMutableDictionaries 填充的三列表视图,它们与 dict1(key,value1) 和 dict2(key,value2) 共享相同的键(即 key | value1 | value2 )。我想在第三列手动输入数据并在dict2中创建键/值对象。但是当我这样做时,我的代码选择了错误的键:S

这是委托的代码:

 - (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 ]];
   }    
}

任何想法 ?

编辑:我想完成我的问题:如何检索单元格中显示的数据?我认为没有其他方法可以将 NSMutableDictionnaries 与 TableViews 一起使用,因为 [dict allKeys] 的键顺序与用于显示它的顺序不同!储存一个版本的 [dict allKeys] 似乎是多余和愚蠢的。

4

1 回答 1

0

我认为您正在使用的这个委托函数用于在表格视图中显示带有格式数据源的数据。它用于设置,而不是检索。

您可以使用 - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 来设置 tableview 的数据源。

于 2012-12-17T05:01:24.577 回答