重新加载NSTableView数据不起作用

时间:2014-01-16 21:56:05

标签: objective-c cocoa nstableview

我试图在我的应用程序中更新NSTableView,但我发现没有任何效果。 我的项目中有两个课程:

  • AppDelegate
  • TableViewControllerNSTableViewDelegateNSTableViewDataSource

当我尝试添加新行时,我可以看到ArrayController(向表提供数据),包含新元素,但NSTableView没有。 我的表格也作为属性与TableViewController相关联,但未与AppDelegate相关联。 我试过打电话

[self.table performSelectorOnMainThread:@selector(reloadData) withObject:nil waitUntilDone:NO];

dispatch_async(dispatch_get_main_queue(), ^{
    [self.table reloadData];
});

其中table是NSTableView连接属性。

是否有其他方法可以刷新表格视图?

修改

问题解决了。

1 个答案:

答案 0 :(得分:0)

您在TableViewController中将数据添加到数组的位置是什么?如果是这样,您是否尝试在将数据添加到阵列后立即自行添加[self.table reloadData]?这应该在没有你包装它的方法的情况下得到更新的数据.expressSelector和dispatch_async方法似乎没必要,但由于我看不到所有的代码,你可能会将它们放在那里,原因不明显。