如何创建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

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