通知模式:一个对象能够给其他任意数量的对象广播信息。对象之间可以没有耦合关系。
NSNotification(通知),封装了要广播的信息。
NSNotificationCenter(通知中心),管理注册接收消息对象,广播消息。
observer(观察者),需要监测广播信息的对象,即接收信息的对象。
接收信息对象在通知中心进行注册,包括:信息名称、接收信息时的处理⽅方法。
对象通过通知中⼼广播信息,包括:信息名称、信息内容。
已经注册过的对象如果不需要接收信息时,在通知中⼼注销。
注册:[[NSNotificationCenter defaultCenter]addObserver:注册对象 selector:@selector(⽅方法名) name:信息名称 object:nil]
注销:[[NSNotificationCenter defaultCenter]removeObserver:注销对象 name:信息名称 object:nil];
发送信息:[[NSNotificationCenter defaultCenter]postNotificationName:信息名称 object:发信息对象 userInfo:发送消息时传递的信息];
可以在一个通知中完成多个页面的转换, 假如有 A,B,C,D 四个controller 中 A B C 三个注册了同一个通知, 在D 中响应了这个通知 同时把想传给 ABC 三个界面的 消息存到一个字典中 这样 ABC 三个界面就会更具传过去的值做响应的修改....