objective-c - cocoa , objective-c NIB 加载两次

标签 objective-c cocoa macos

我正在加载一个包含首选项窗口的 Nib ,使用:

 PreferenceWindowViewController *pref = [[PreferenceWindowViewController alloc] init];
[NSBundle loadNibNamed:@"PreferenceWindow" owner:pref];

但问题是,用户可以轻松地再次单击菜单栏中的“首选项选项”(文件 -> 首选项),而无需关闭当前打开的首选项窗口,我正在考虑将 bool 变量设置为 true一旦 Nib 打开,但不确定如何在关闭首选项 View Controller 类中的窗口时将 bool 变量重新设置为 false( Nib 未加载),该变量存在于主类中

最佳答案

为什么不在应用程序启动时加载窗口一次,然后执行以下操作:

[pref showWindow:nil];

每次用户单击您的菜单项时。这样不是更容易吗?

关于objective-c - cocoa , objective-c NIB 加载两次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5513108/

相关文章:

objective-c - 需要一种更高效的方法来将大量 float 存储到数组中并将它们读回

ios - 获得异常,即使我不应该使用 UIButton

objective-c - cocoa ,带有核心数据数据源的 TableView

cocoa - 我们可以在 Mac Cocoa 应用程序中使用弹出窗口吗?

macos - 创建一个作为守护进程运行的简单 Hello World 工具

java - 卸载 Java Mac OS X

macos - OSX 10.7.5 : fatal error: 'ft2build.h' file not found

ios - .self 在 Swift 中的结构类型之后

cocoa - 核心动画 'flip'动画

css - "There is no no-color option ("少 --help "for help)"少