看来我无法控制系统首选项窗格中的NSApp委托,这是可以理解的。有什么其他方式可以让我的对象在程序变为活动状态时通知?NSApplication委托和首选项窗口
0
A
回答
4
Cocoa框架中的大多数委托方法只是通知方法。这包括application{Will,Did}{Become,Resign}Active:
,这是NSApplication{Will,Did}{Become,Resign}ActiveNotification
的通知方法。通知与代表方法位于同一位置:the NSApplication documentation。
因此,只需注册本地NSNotificationCenter
上的通知即可。
3
NSPreferencePane为您提供了一些可以覆盖以响应更改的方法。特别是,mainViewDidLoad:
让您有机会在首选项窗格变为活动状态时进行初始化。
如果您确实想要跟踪系统首选项窗口变为主键还是键值,您可以订阅NSWindow针对这些事件的通知。
// These messages get sent to the a preference panel just before and
// just after it becomes the currently selected preference panel.
- (void) willSelect;
- (void) didSelect;
// The willUnselect message gets sent to the currently selected preference panel
// just before and just after it gets swapped out for another preference panel
- (void) willUnselect;
- (void) didUnselect;
相关问题
- 1. 在包中使用NSApplication委托
- 2. NSApplication委托调用的顺序
- 3. 事件委托和窗口与window.document
- 4. Objective-C 10.10 NSApplication委托不能调用委托类中定义的方法
- 5. 数据源和委托选项
- 6. Android列表首选项和窗口小部件背景
- 7. Win64上的接口委托
- 8. 首选项和复选框
- 9. 接口帮助程序或委托接口父项
- 10. 目标选项在Eclipse窗口中禁用 - >首选项 - > android
- 11. JQuery委托和在函数中使用traveral选项
- 12. 的MethodInfo和委托
- 13. NSObject ModalView和委托
- 14. ThreadPool.QueueUserWorkItem和委托BeginInvoke
- 15. 为什么我无法打开每个窗口的首选项?
- 16. 带有首选项窗口的MyEclipse 2017 CI错误
- 17. 如何打开一个窗口“首选项”?
- 18. Python不会出现在首选项窗口中
- 19. Android,首选项屏幕弹出窗口文本颜色
- 20. 首先执行/提出的委托和事件?
- 21. 从弹出窗口类调用委托方法
- 22. 覆盖系统首选项窗格?
- 23. ios多级首选项窗格
- 24. applescripting显示首选项窗格
- 25. 列表首选项和共享首选项
- 26. CF首选项/库/首选项
- 27. 如何在eclipse中的首选项窗口中增加导航窗格大小
- 28. 从系统首选项窗格中的NIB打开一个窗口
- 29. Android设置和首选项
- 30. 使用TabBar和NavBar在应用程序委托中配置窗口
谢谢,作品像魅力。我将此通知与FSEvents结合使用来刷新NSTableView。根据我的调试,一切正常,直到我在视图上调用setDataSource。该视图只是不更新。任何想法发生了什么? – 2008-11-29 01:03:19