KVO模式

观察者模式中的一种
//用来让一个对象去观察另外一个对象的属性的改变,一旦被观察的对象的属性发生了改变,观察者可以接受到相应的事件,并且还可以拿到改变的值

对象 addObserver调用方法
//参数1:观察者
//参数2:观察的属性
//参数3:观察的值的属性(新值或者旧值)
//NSKeyValueObservingOptionNew 新值
//NSKeyValueObservingOptionOld 旧值

//当观察者观察的对象的属性发生改变的时候,系统会自动调用这个方法
[self.account addObserver:self forKeyPath:@"balance" options:NSKeyValueObservingOptionNew context:nil];

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

    //参数1:观察的属性名
    //参数2:观察对象
    //参数3:改变的值
    NSLog(@"%@",keyPath);
    NSLog(@"%@",object);
    NSLog(@"%@", change);

}

你可能感兴趣的:(KVO模式)