观察者模式:对象间的一对多的依赖关系,当一个对象发生改变,其相关对象皆得到通知自动更新。
观察者模式步骤:
1.观察者注册成为观察者的监听者
2.当观察者发生变化调用观察者中的监听方法
3.被观察者通过一个容器来储存监听者,当发生变化会通知容器中的所有监听者
观察者模式有两种:『KVO』 『通知(Notification)』
KVO:当指定的对象的属性被修改后,则对象就会接受到通知。每次指定的被观察的对象的属性被修改后,KVO自动通知相应的观察者。被观察者直接向观察者发送通知【主要用于绑定特定对象属性的值】
代码的实现:
首先定义一个类 声明两个变量 controller中使用 用户单击View中的button调用控制器中的action去更改模型中的数据 控制器需要实现的回调,相当于收到广播后我应该做啥事Notification:由一个中心对象为所有观察者提供变更通知 【主要关注程序事件 (系统键盘的弹出等)】
网友评论