NSTableView在特定条件下不重绘

时间:2012-05-12 12:32:55

标签: macos osx-lion xcode4.3

我有一个NSWindow,有两个NSTableViews和其他NSViews。由于我已将NSTableView更改为视图模式其中一个表,因此在特定条件下无法正确刷新。 当另一个视图放在顶部然后删除并释放时,其中一个nstableviews不会刷新其内容,并且删除的视图仍然可见。 tabledata已正确重新加载,甚至可用于从(不可见)行中进行选择。 但是,窗口调整大小会立即正确刷新并显示在两个NSTableViews中。

有人可以帮忙吗?谢谢。 约翰

2 个答案:

答案 0 :(得分:0)

如何删除被删除的视图?有各种方法提到它们不会导致重新显示,并且您必须自己这样做。您可能需要在要删除的视图,超级视图或其他所有方法都未通过表视图时调用其中一个-setNeedsDisplay...方法。

答案 1 :(得分:0)

感谢您的建议。事实上,所有这些都是来自损坏的XIB文件的第二个视图。经过几次更改后,我开始在视图开始时获得异常。从XIB中删除大部分子视图并重新插入后,所有问题都消失了。