KVO理解(响应式编程)

    xiaoxiao2025-09-20  538

    响应式编程

    在程序开发中:

    a = b + c 赋值之后 b 或者 c 的值变化后,a 的值不会跟着变化

    响应式编程,目标就是,如果 b 或者 c 的数值发生变化,a 的数值会同时发生变化;

    相当于两个具有某种联系的对象,一个对象的变化另一个对象作出相应的动作,

    这就是我们所理解的KVO或者通知的原理吧!

    KVO实现过程解析:

    创建一个person类:

    子类实现:

    观察者:

    检验:

     //创建一个父类的对象     Person *p = [[Person alloc] init];     p.age = 0;     _person = p;          //调用新的注册观察者方法     [p ZHZ_addObserver:self forKeyPath:@"age" options:NSKeyValueObservingOptionNew context:nil]; }

    响应:

    //响应方法 - (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary<NSString *,id> *)change context:(void *)context{          NSLog(@"Person Age %d Changed",_person.age); }

    转载请注明原文地址: https://ju.6miu.com/read-1302850.html
    最新回复(0)