我有一个包含 10 个单元格的 NSTableView
。它们都是相同的单元格,我想重复使用它们,但我似乎无法让表格 View 这样做。
目前,每次需要一个新的单元格时,委托(delegate)似乎无法找到具有相同标识符的前一个单元格,必须重新创建它。
下面是我的代码,对我可能做错的地方有什么建议吗?
- (NSInteger)numberOfRowsInTableView:(NSTableView *)aTableView
{
return 10;
}
- (NSView *)tableView:(NSTableView *)tableView viewForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row
{
static NSString *cellIdentifier = @"Name";
NSTableCellView *cellView = [tableView makeViewWithIdentifier:cellIdentifier owner:self];
if (cellView == nil)
{
NSLog(@"A cell");
NSRect cellFrame = [_scrollView.contentView bounds];
cellFrame.size.height = 65;
cellView = [[NSTableCellView alloc] initWithFrame:cellFrame];
[cellView setIdentifier:cellIdentifier];
}
return cellView;
}
最佳答案
我做了一些测试,发现表格会不断创建新的单元格,直到表格无法同时显示所有单元格。
此时,表格将重用不可见的单元格。
关于objective-c - 如何在 NSTableView 中重用单元格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13107194/