【发布时间】:2014-02-21 19:02:43
【问题描述】:
支持基于视图表的列自动调整大小请求需要什么?文档在这一点上确实不清楚,并且似乎在谈论基于单元格的视图。
这是为了处理对列分隔符的双击。
我可以通过为NSTableView 和outlineView:sizeToFitWidthOfColumn: 为NSOutlineView 实现tableView:sizeToFitWidthOfColumn: 来完成这项工作,但文档说这仅对大型表是必需的。有没有更正确的方法来做到这一点?
- (CGFloat)tableView:(NSTableView*)tableView sizeToFitWidthOfColumn:(NSInteger)column {
NSUInteger n = [self numberOfRowsInTableView:tableView];
CGFloat w = 30;
NSTableColumn* col = [[tableView tableColumns] objectAtIndex:column];
for (int i=0; i<MIN(n, 100); ++i) {
NSView* vw = [self tableView:tableView viewForTableColumn:col row:i];
w = MAX(w, [vw frame].size.width);
}
return w;
}
【问题讨论】:
标签: objective-c cocoa nstableview nsoutlineview