인 아이템/행이 검색과 일치하는 경우 내 요구 사항은 그런 일,확장 NSOutlineView 프로그램
NSOutlineview의 상단에, 검색 텍스트 필드와 NSOutline보기 5 월이 중첩 된 그룹이 포함되어있을 것입니다 쿼리, 다음이 표시되어야하는 루트 레벨까지의 모든 부모 노드,
이내가 일을하고있는 방법은 다음과 같다,
1 - 입력 된 것을 사용자, 다시 건물 TNE의 NSOutlineview에 따라 데이터 소스 (아무것도하지만, NSArray를)
2 -
지금 내 문제는 그룹이 자동으로 확장 가져 오지이다, 모든 대리자 메서드를 구현, 난 내가-expandItem:expandChildren:,
하지만 내 질문에 호출해야합니다 알고 내가이 전화를해야하는 위치에서이다, 은 내가 데이터를 다시로드 후라고하지만 난 ,,,,이 같은
를 호출하려고를 작동하지 않았다
- (id)outlineView:(NSOutlineView *)outlineView objectValueForTableColumn:(NSTableColumn *)aTableColumn byItem:(id)item {
if(aTableColumn == nil){
[self log:@"aTableColumn is NIL "];
return nil;
}
if([[aTableColumn identifier] isEqualToString:@"firstColumn"]){
if ([myOutlineView shouldExpandIt:item]){
[myOutineView expandItem:item];
}
return item;
}
return item;
}
하지만 아마도 오류있는 동일을 달성하기 위해 재귀 루프
에 다른 길을 가고. 당신의 모든
본인은 위임 또는 데이터 소스 방법을 처리하는 동안이 호출되지 않습니다 있는지 확인하십시오 것입니다 .... 내가
를 사용하여 지금까지하고 있어요/축소 그룹을 확장 할 필요가있다. 예를 들어 주 스레드에서'dispatch_async'를 사용하여 지연 호출을 시도 할 수 있습니다. – Monolo"데이터 소스를 재구성 중"이라면 Obcts 등을 제거 할 때 무엇을 의미합니까? NSArray에서 객체를 필터링/제거하는 검색 기능입니까? –