看來我無法控制系統首選項窗格中的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. Objective-C首選項窗口makeKeyAndOrderFront或showWindow?
- 7. 窗口控制器委託錯誤
- 8. NSApplication窗口屬性 - Windows未刪除?
- 9. Android列表首選項和窗口小部件背景
- 10. 沙盒和首選項窗格
- 11. [[[[[UIApplication sharedApplication]委託]窗口]和[[UIApplication sharedApplication] .keyWindow之間的區別?
- 12. Win64上的接口委託
- 13. Javascript窗口選項
- 14. 接口幫助程序或委託接口父項
- 15. 首選項和複選框
- 16. NSObject ModalView和委託
- 17. 的MethodInfo和委託
- 18. ThreadPool.QueueUserWorkItem和委託BeginInvoke
- 19. 委託AVCaptureVideoDataOutput和AVCaptureAudioDataOutput
- 20. JQuery委託和在函數中使用traveral選項
- 21. 目標選項在Eclipse窗口中禁用 - >首選項 - > android
- 22. 爲什麼我無法打開每個窗口的首選項?
- 23. Python不會出現在首選項窗口中
- 24. 獲取Finder的首選項窗口的NSToolbar外觀
- 25. 帶有首選項窗口的MyEclipse 2017 CI錯誤
- 26. Android,首選項屏幕彈出窗口文本顏色
- 27. 窗口>首選項更新後丟失在Android Studio
- 28. 如何打開一個窗口「首選項」?
- 29. UITabBarController委託didselect項目
- 30. 窗口和選項卡關閉檢測
謝謝,作品像魅力。我將此通知與FSEvents結合使用來刷新NSTableView。根據我的調試,一切正常,直到我在視圖上調用setDataSource。該視圖只是不更新。任何想法發生了什麼? – 2008-11-29 01:03:19