标签:
- (void)viewDidLoad { [super viewDidLoad]; self.person = [[Person alloc] init]; self.person.name = @"why"; // 监听person对象name属性发生改变 // Observer : 观察者,谁要做事情谁就成为观察者 // KeyPath : 观察的属性 // options : 传入新值还是旧值
给对象添加监听的方法 [self.person addObserver:self forKeyPath:@"name" options:NSKeyValueObservingOptionOld context:nil]; self.person.name = @"lmj"; } // 1.KeyPath: 属性 2.Object : 观察对象 3.change:存放着对应改变的值
实现监听的方法----监听 - (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary<NSString *,id> *)change context:(void *)context { NSLog(@"keyPath:%@ object:%@ change:%@", keyPath, object, change); NSLog(@"%@", self.person.name); }
标签:
原文地址:http://www.cnblogs.com/mshong1616/p/5095724.html