场景
-
在
macOS
下进行Cocoa
开发时,我们偶尔会需要监听窗口的大小改变的通知,以便能控制子窗口或者NSView
改变大小. 比如NSWindowDidResizeNotification
通知. 那么我们应该如何监听父窗口的大小改变通知? -
如果我们使用
NSNotificationCenter
进行postNotificationName
消息, 这个消息发送到接受者是异步还是同步的?
说明
-
Cocoa
包括两种类型的通知中心.NSNotificationCenter
管理同进程的通知, 而NSDistributedNotificationCenter
管理在同一个系统里的跨进程的通知. -
这里我们开发界面程序,在同一个进程里的通知都是通过
NSNotificationCenter
管理. 每个进程都有一个默认的通知中心,这个通知中心你可以通过[NSNotificationCenter defaultCenter]
类方法来获取. 这个通知中心处理同一个进程里通知. 这个通知中心的设计模式就是我们常听说的观察者模式
或者说是