微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

KVOController keyvalue 监控实现

程序名称:KVOController

授权协议: BSD

操作系统: OS X

开发语言: Objective-C

KVOController 介绍

温馨提示:该项目除了使用 BSD
协议授权外,还需遵守附加的专利授权

Key-value 的监控是一个 MVC 应用中非常有用的技术。KVOController (来自 facebook)构建了一个基于 Cocoa 的
time-tested key-value 监控实现,提供简单方便、线程安全的 API。好处包括

  • 使用 Blocks、自定义 Actions 或者 NSkeyvalueObserving 回调进行通知.

  • 观测者移除时无异常

  • 控制器 dealloc 时隐式的观测者移除

  • 提升使用 NSkeyvalueObservingInitial 的性能

  • 线程安全并提供在观测者恢复时额外的保护Thread-safety with special guards against observer resurrection – rdar://15985376.

使用方法

// create KVO controller with observer
FBKVOController *KVOController = [FBKVOController controllerWithObserver:self];

// observe clock date property 
[KVOController observe:clock keyPath:@"date" options:NSkeyvalueObservingOptionInitial|NSkeyvalueObservingOptionNew block:^(ClockView *clockView, Clock *clock, NSDictionary *change) {

  // update clock view with new value
  clockView.date = change[NSkeyvalueChangeNewKey];
}];

要求:

  • iOS 6 or later.

  • OS X 10.7 or later.

KVOController 官网

https://github.com/facebook/KVOController

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐