如何创建KVO

作者: 飞鱼IOS | 来源:发表于2015-09-02 10:13 被阅读167次

书面语: KVO,即:Key-Value Observing,它提供一种机制,当指定的对象的属性被修改后,则对象就会接受到通知。简单的说就是每次指定的被观察的对象的属性被修改后,KVO就会自动通知相应的观察者了。

工程中:

新建一个KVO:

[A addObserver:B forKeyPath:@"isSecondMenu" options:NSKeyValueObservingOptionNew | NSKeyValueObservingOptionOld context:nil];

事件的回调:

- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context{

if(SINGLECLASS.isSecondMenu){

[_footView removeFromSuperview];

}else{

[self.view addSubview:_footView];

}

}

官方描述:Registers anObserver to receive KVO notifications for the specified key-path relative to the receiver.


A,B都是类,A 注册一个观察者去响应事件(isSecondMenu 发生改变时回调的一个事件),而isSecondMenu
必须是A类的一个属性。

响应事件必须在B类中实现。

相关文章

  • 如何创建KVO

    书面语: KVO,即:Key-Value Observing,它提供一种机制,当指定的对象的属性被修改后,则对象就...

  • 如何优雅地使用 KVO

    如何优雅地使用 KVO 如何优雅地使用 KVO

  • [iOS] KVO的指导

    nshipster - KVO 如何优雅地使用 KVO

  • 深入理解KVO

    iOS | KVO | Objective-C KVO的本质是什么,如何手动触发KVO? 1.什么是KVO KVO...

  • 04. KVO使用,原理,本质

    问题 KVO日常使用 KVO原理(KVO本质是什么) 如何手动触发KVO 直接修改成员变量会触发KVO吗 KVO图...

  • iOS相关知识(三)--- KVO相关

    1、什么是KVO 2、如何使用KVO 第一步:创建一个Person类 然后添加一个name属性 第二步 在控制器中...

  • 关于KVO的简单记录

    很多人提到KVO的时候,就知道他是用来监听的。然后实现原理就是系统在后台默认创建子类。具体问道,创建子类的时候如何...

  • Runtime 实现 KVO

    转载自:如何自己动手实现 KVO KVO (Key-Value Observing) KVO 是 Objectiv...

  • KVO-KVC的原理探究 - KVO篇

    关于KVO的探究 KVO的基本使用 创建Person类,添加属性age: 在ViewController中添加属性...

  • kvc 与 kvo

    1.KVO KVC 没联系 2.KVO 是监听属性值的改变 3.KVO 底层实现原理是系统给当前类创建子类 , 在...

网友评论

    本文标题:如何创建KVO

    本文链接:https://www.haomeiwen.com/subject/szdlcttx.html