ios 监听一个控制器的属性_OC观察者模式之KVO的使用与思考

本文详细介绍了Objective-C中的KVO(Key-Value Observing)机制,包括KVO的作用、使用方法、实现原理,以及与KVC、代理、通知的区别,并探讨了KVO实现过程中的注意事项。通过示例代码展示了自动和手动监听的用法,帮助开发者更好地理解和应用KVO。
摘要由CSDN通过智能技术生成

转载本文需注明出处:微信公众号EAWorld,违者必究。

引言:无论用哪种语言进行软件开发,我们都会接触到设计模式,个人认为设计模式存在的意义在于:在某些需求下,采用适合的设计模式,使代码结构合理,从而提高代码的可读性、可扩展性、可移植性,此文将要讨论的是OC开发中的一种常用模式之一:观察者模式之KVO。KVO俗称键值观察(key-value observe),键值观察是当被观察的对象属性发生改变时,会通知到观察对象的一种机制。目录:

1、KVO的作用

2、KVO的使用方法

3、KVO的实现原理

4、KVO与KVC、代理、通知的区别

5、KVO实现过程中的注意事项无论用哪种语言进行软件开发,我们都会接触到设计模式,个人认为设计模式存在的意义在于:在某些需求下,采用适合的设计模式,使代码结构合理,从而提高代码的可读性、可扩展性、可移植性,此文将要讨论的是iOS开发中的一种常用模式之一:观察者模式之KVO。我们先看下官方文档给的KVO介绍:

翻译过来就是:KVO是运用isa混写技术实现自动观察键值的。isa指针是指向对象的类,本质上是指向类中的方法实现。当一个对象注册观察者时,这个对象的isa指针被修改指向一个中间类。永远不要用isa来判断一个类的继承关系,而是应该用class方法来判断类的实例。KVO俗称键值观察(key-value observe),键值观察是当被观察的对象属性发生改变时,会通知到观察对象的一种机制。1.KVO的作用

1、监听带有状态的基础控件,如开关、按钮等;

2、监听字符串的改变,当监听的字符串改变时,来做一些自定义的操作;

3、当数据模型的数据发生改变时,视图组件能动态的更新,及时显示数据模型更新后的数据,比如tableview中数据发生变化进行刷新列表操作,监听 scrollView的contentOffset属性监听页面的滑动.2.KVO的使用方法KVO的使用可分为自动监听和手动监听。1.自动监听1.1自动监听操作步骤:(1)添加观察者(2)在观察者中

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值