第九章 监听事件

监听事件有多种方式,代理,通知中心,addTarget等方法,还有KVC KVO

  • KVC:Key Value Coding简直编码,常见是讲一个模型赋值。

一般使用setValuesForKeysWithDictionary:方法

  • KVO:Key Value Observing,简直监听,常见作用是用来监听某一个属性值的改变

    /**
     *  简直监听:aaa监听了bbb的name属性的变化,需要实现监听方法
     *  addObserver:添加监听,当前控制器监听self.tableView 的变化,当他的其中的一个属性@“name”更改的时候调用,传递option的值
     */
    [bbb addObserver:aaa forKeyPath:@"name" options:NSKeyValueObservingOptionOld | NSKeyValueObservingOptionNew context:nil];
- (void)dealloc {
    [self.tableView removeObserver:self forKeyPath:@"name"];
}
/**
 *  监听到object对象的keyPath发生改变
 *
 *  @param keyPath 属性
 *  @param object  对象
 *  @param change  表示改变的内容,为添加监听的时候由options来决定
 *  @param context 内容
 */
- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary<NSString *,id> *)change context:(void *)context {

}

results matching ""

    No results matching ""