2012-12-14 2 views
0

dict1 (key, value1) 및 dict2 (key, value2)와 동일한 키 (예 : key | value1 | value2)를 공유하는 두 개의 NSMutableDictionaries로 채워진 세 개의 열로 구성된 Table View가 있습니다. 세 번째 열에 수동으로 데이터를 입력하고 dict2에서 키/값 개체를 만들려고합니다.NSTableView에서 데이터 검색

여기에 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 ]]; 
    }  
} 

어떤 생각?

편집 : 내 질문을 완료하고 싶습니다. 어떻게 셀에 표시된 데이터를 검색 할 수 있습니까? [dict allKeys]가 키를 표시하는 데 사용 된 것과 동일한 순서로 키를 제공하지 않기 때문에 NSMutableDictionnaries를 TableViews와 함께 사용하는 다른 방법은 없습니다. 그리고 [dict allKeys]의 버전을 구입하는 것은 중복되고 어리석은 것처럼 보입니다.

답변

0

당신이 사용하고있는이 델리게이트 함수는 형식 데이터 소스로 tableview의 데이터를 보여주는 데 사용됩니다. 검색에 사용되지 않고 설정에 사용됩니다.

- (UITableViewCell *) tableView : (UITableView *) tableView cellForRowAtIndexPath : (NSIndexPath *) indexPath를 사용하여 tableview의 데이터 소스를 설정할 수 있습니다.

관련 문제