观察者模式:对象间的一对多的依赖关系,当一个对象发生改变,其相关对象皆得到通知自动更新。
观察者模式步骤:
1.观察者注册成为观察者的监听者
2.当观察者发生变化调用观察者中的监听方法
3.被观察者通过一个容器来储存监听者,当发生变化会通知容器中的所有监听者
观察者模式有两种:『KVO』 『通知(Notification)』
KVO:当指定的对象的属性被修改后,则对象就会接受到通知。每次指定的被观察的对象的属性被修改后,KVO自动通知相应的观察者。被观察者直接向观察者发送通知【主要用于绑定特定对象属性的值】
代码的实现:




Notification:由一个中心对象为所有观察者提供变更通知 【主要关注程序事件 (系统键盘的弹出等)】

网友评论