向下滚动列后,将更新NSTableView数据

时间:2015-05-27 13:36:18

标签: objective-c cocoa nstableview reloaddata

我有两个表视图同步在一起,并且都绑定到同一个数组控制器。在第一个表视图中,列是可编辑的,相应的列值应反映在另一个表视图中。在第一个(可编辑的)表视图中,可以选择将值从一列复制到其余列。问题是:当我编辑一个列值并将值复制到第一个表视图中的其他列时,这些值不会反映在第二个表视图中,直到我滚动列到第一个表视图中的最后一列。 我尝试重新加载表视图的数据/也尝试在performselectorinmainthread / dispatch_async中调用重新加载数据,但是在我向下滚动之前,这些值仍未反映在第二个表视图中第一张表格。

dispatch_async(dispatch_get_main_queue(), ^{
        [self.firstTableView reloadData];
        [self.secondTableView reloadData];
        [self.firstTableView setNeedsDisplay];
        [self.secondTableView setNeedsDisplay];
    });



   [self performSelectorOnMainThread:@selector(updateTable) withObject:nil waitUntilDone:NO];

-(void) updateTable
{
       [self.firstTableView reloadData];
       [self.secondTableView reloadData];
       [self.firstTableView setNeedsDisplay];
       [self.secondTableView setNeedsDisplay];
}

请告诉我,因为我的代码中遗漏了一些内容。

0 个答案:

没有答案