如何检查此时是否正在显示NSView?

时间:2010-01-21 14:02:56

标签: cocoa nstableview nsview

我的应用程序在其主窗口中有一个NSToolbar。根据单击的图标,此窗口中将显示NSView。我的问题是,其中一个视图显示了NSTableView中的数据,我想在每次视图可见时重新加载。由于-init只被调用一次,我不知道该怎么做。 (示例:当应用程序启动时,它显示了文档部分[在窗口的子视图上]。现在,当我单击Employees [显示另一个子视图而不是第一个子视图]然后再次在Documents上时,我想要Documents的NSTableView中的数据重新加载。)

我该怎么做?

提前致谢。

1 个答案:

答案 0 :(得分:1)

  

我的应用程序在其主窗口中有一个NSToolbar。根据单击的图标,NSView将显示在此窗口中。

使用标签视图。您可以隐藏选项卡,然后实现工具栏项的操作方法以充当选项卡,将选定的选项卡视图项更改为与按下的工具栏项对应的任何一个。

  

现在当我点击Employees [显示另一个子视图而不是第一个子视图]然后再次单击Documents时,我希望Documents NSTableView中的数据重新加载。

为什么呢?为什么不在数据发生变化时重新加载?

你不必拿着NSTableView的手;如果它再次需要你的数据,它会再次要求你。

如果您担心在视图不可见时重新加载数据,那就是过早优化。在通过分析证明这是一个真正的性能问题之前不要担心。