我有一个想要打开的 nib 文件,但它只是一个信息面板,所以我不需要任何方法。有什么办法可以直接打开吗。我不在 NSWindowController 子类的类中。
最佳答案
是的,您可以使任何对象成为 xib 的所有者。然而,该对象必须“托管”您的 xib 中使用的 socket 。
例如,如果您有“ConfirmationSheet.xib”,只需在您想要“拥有”该 xib 实例的类中声明您的导出,将文件的所有者类设置为您的类,然后连接您的导出。让我们使用名为“confirmHowMuchSlider”的 socket 作为示例:加载 xib 时,类的“confirmHowMuchSlider” socket 将连接到您在 xib 中连接的 slider ,就是这样。
请注意,这通常是设计不太好的标志,IMO。如果它足够复杂,需要在自己的 xib 中,那么它应该有自己的 Controller 。如果它不复杂(只是一张表),您可以牺牲另外 0.001 秒的应用程序或文档加载时间,并将其放在更中心的 xib 中。 :-)
请记住,如果您出于性能原因这样做,则仅加载带有几个按钮的单个工作表的单独一轮磁盘访问通常在性能上更差从一个 xib 一次性加载更多内容。一切事物都需要权衡。
关于objective-c - 在没有 NSWindowController 的情况下加载 nib 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2254316/