我的要求是这样的,
在 NSOutlineview 之上会有一个搜索文本字段,并且 NSOutline 视图可能包含嵌套组,
如果一个项目/行与搜索查询匹配,那么它应该被显示,它的所有父节点直到根级别,
我正在做的方式如下,
1 - 根据用户输入的内容,重新构建 NSOutlineview 数据源(不过是 NSArray)
2 -- 已实现所有委托方法,
现在我的问题是 Group 没有自动扩展,我知道我应该打电话
-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;
}
但它的错误可能是递归循环
任何其他方式来达到同样的效果。