NSTableView:只调用numberOfRowsInTableView:datasource

时间:2012-09-03 09:22:56

标签: cocoa nstableview

我遇到了关于NSTableView的问题,它就像: tableview的一个数据源称为:

- (NSInteger)numberOfRowsInTableView:(NSTableView *)tableView
{
    return [self.dataArray count];
}

但这个从未被称为:

- (id)tableView:(NSTableView *)tableView objectValueForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row
{
    // the code 
}

我已经检查了数组确实有数据,并检查了 在主线程中调用[NSTableView reloadData]

所以我完全迷失了这个奇怪的问题。 有人会提供一些提示吗? 谢谢!

1 个答案:

答案 0 :(得分:2)

我将初始代码从awakeFromNib移到了init,并且它正确调用了。但我还是不知道真正的原因。我想这与视图的生命周期有关,因为具有tableview的类是NSObject的子类而不是NSViewController的子类。