KVC和KVO

KVC:

1全称是Key-value coding,翻译成键值编码。它提供了⼀一种使⽤用字符串⽽而不是访问器⽅方法去访问⼀一个对象属性的机制。

2、通过setValue: forKey: 的⽅方式对类的属性进⾏行赋值,key为属性的名称,value为具体的赋值。

3、通过- (id)valueForKey:(NSString *)key 访问对象的属性


KVO:

A类中的某个属性值发⽣生变化,B类的对象做为A类对象的观察者,能够观察到此变化,并进⾏行后续的处理。

. 为调⽤用对象添加观察者


1.- (void)addObserver:(NSObject *)observer forKeyPath:(NSString
*)keyPath options:(NSKeyValueObservingOptions)options context:(void
*)context;

函数说明:
observer-观察者对象
keyPath-对象的

key,需要观察的属性

options-观察键值变化的⼏几种可选⽅方式

context-可以传NULL,如果⾮非NULL,则在观察者回调函数中会收到⼀一些数据

2. 观察者收到消息后的处理函数
- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:

(id)object change:(NSDictionary *)change context:(void *)context;

函数说明:keyPath-对象的key,需要观察的属性object-发送通知的对象change-包含变化之前与变化之后属性值的字典context-被观察者对象传⼊入的context



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值