2012-10-28 39 views
2

我有一个NSTableView与10个单元格。他们都是相同的单元格,我想重复使用它们,但是我似乎无法获得表格视图。如何在NSTableView中重用单元格?

当前,每次需要新单元时,委托似乎无法找到具有相同标识符的前一个单元并必须重新创建它。

下面是我的代码,关于我可能会做错什么的建议?

- (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; 
} 

回答

6

我做了一些测试,发现该表将不断创造新细胞,直到表不能同时显示所有单元格。

此时,表格将重用不可见的单元格。

相关问题