【发布时间】:2018-09-20 08:11:22
【问题描述】:
我一直在尝试在基于视图(我想保持这种方式)的 NSOutlineView 中使用所谓的“标题单元格”,但没有成功。
我尝试了以下方法:
我已成功为我要制作标题的对象设置
-(BOOL)outlineView:(NSOutlineView *)outlineView isGroupItem:(id)item。我已经彻底测试了我的委托和数据源,因此我们可以假设它们设置正确。
当谈到
-(NSView *)outlineView:(NSOutlineView *)ov viewForTableColumn:(NSTableColumn *)tableColumn item:(id)item的定义时,我被卡住了。
我从阅读中感觉到在 IB 中需要设置一些东西,但我不知道是什么。这个@"HeaderCell" 指的是什么?
我尝试了这种根本不成功的东西(显示一个空视图)
-(NSView *)outlineView:(NSOutlineView *)ov viewForTableColumn:(NSTableColumn *)tableColumn item:(id)item
{ NSTableCellView *result = nil;
result = [ov makeViewWithIdentifier:@"HeaderCell" owner:self];
[[result textField]setStringValue:@"myString"];
return result;
}
我错过了什么?
【问题讨论】:
-
@"HeaderCell" 指的是表格单元格视图标识符。在 IB 中选择代表 Header Cell 的 Table Cell View 并在实用工具侧边栏上选择身份检查器...您应该会看到标识符字段。
-
这正是我一直在寻找的,你应该从中得到答案,以获得(赚到的)代表;)
-
很高兴它有帮助...我添加了评论作为答案
标签: objective-c cocoa nsoutlineview