我正在研究菜单栏应用程序,现在我想创建一个功能,即当您从首选项中取消选中某个复选框时,菜单项将隐藏。从其他类Cocoa调用IBOutlet
的问题是,偏好另一类则AppDelegate中和复选框在Preferences.xib和菜单项都在MainMenu.xib
有什么建议?
UPDATE:
我通过使用此代码固定它,
[[[[NSApplication sharedApplication] delegate] iboutlet] setHidden:NO];
我正在研究菜单栏应用程序,现在我想创建一个功能,即当您从首选项中取消选中某个复选框时,菜单项将隐藏。从其他类Cocoa调用IBOutlet
的问题是,偏好另一类则AppDelegate中和复选框在Preferences.xib和菜单项都在MainMenu.xib
有什么建议?
UPDATE:
我通过使用此代码固定它,
[[[[NSApplication sharedApplication] delegate] iboutlet] setHidden:NO];
在夫特郎
if let appDelegate = NSApplication.sharedApplication().delegate as? AppDelegate {
appDelegate.customMenuItem.hidden = true // or false
}
其中customMenuItem
是您的菜单项的出口。
将菜单项的'hidden'绑定到App Delegate或共享用户默认值控制器的属性。 – Willeke
@Willeke我怎么能做到这一点,即时通讯新可可和objective-c – Bisquitue
好吧,首先在代码中隐藏菜单项。阅读[应用程序菜单和弹出列表简介](https://developer.apple.com/library/prerelease/content/documentation/Cocoa/Conceptual/MenuList/MenuList.html#//apple_ref/doc/uid/10000032 -SW1)。或者让应用程序委托('[NSApp委托]')隐藏菜单项。 – Willeke