key-value 监控实现 KVOController

BSD
Objective-C
OS X
Facebook
2014-02-26
红薯
温馨提示:该项目除了使用 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.

加载中

评论(0)

暂无评论

KVOController 1.1.0 发布,键值监控技术封装

今天,Facebook 的员工在 GitHub 上发布了 KVOController v1.1.0 版本。 这次更新主要包含了以下改进: 新的特性: 针对 iOS/OS X/tvOS/watchOS 的 Carthage 支持 (#71 by @lexrus #99, #10...

没有更多内容

加载失败,请刷新页面

没有更多内容

暂无问答

几个iOS工程通用模块介绍

写iOS 程序的时候往往需要很多第三方框架的支持,可以大大减少工作量,讲重点放在软件本身的逻辑实现上。 GitHub 里面有大量优秀的第三方框架,而且 License 对商业很友好。一下摘录一下几乎...

2015/05/07 09:41
45
0
KVO原理分析及使用进阶

该文章属于<简书 — 刘小壮>原创,转载请注明: <简书 — 刘小壮> https://www.jianshu.com/p/badf5cac0130 我们在工作中经常会用到KVO,但是系统原生的KVO并不好用,很容易导致Crash。而且编...

11/15 19:44
0
0
“自释放”在iOS开发中的应用

今天,跟大家聊聊“自释放”思想在iOS开发中的应用,何为“自释放”?可以简单的理解为对象在生命周期结束后自动清理回收所有与其相关的资源或链接,这个清理不仅仅包括对象内存的回收,还包...

2015/06/24 16:38
31
0
Facebook将神奇动画引擎Pop开源了!

Facebook 2月发布的新闻类应用Paper,因为其灵动的用户界面和交互,成为近来最令人眼前一亮的移动产品之一。 而这个产品的背后是2011年Facebook收购的Push Pop Press,创始人是分别在Apple任...

2014/04/29 12:45
82
0
将BMP图片转换成ICON图标

将HBITMAP 转为 HICONHICON ConvertToHICON( CBitmap& bitmap) HICON HICONFromCBitmap(CBitmap& bitmap) { BITMAP bmp; bitmap.GetBitmap(&bmp); HBITMAP hbmMask = ::CreateCompatibleBitm...

02/06 15:13
4
0
学习笔记整理

写iOS 程序的时候往往需要很多第三方框架的支持,可以大大减少工作量,讲重点放在软件本身的逻辑实现上。 GitHub 里面有大量优秀的第三方框架,而且 License 对商业很友好。一下摘录一下几乎...

2016/03/29 11:22
10
1
iOS kvo 结合 FBKVOController 的使用

iOS kvo 结合 FBKVOController 的使用 iOS kvo 结合 FBKVOController 的使用 一:FBKVOControlloer是FaceBook开源的一个 在 iOS,maxOS上使用 kvo的 开源库; 提供了block和@selector(SEL) ...

2016/12/27 18:53
29
0
GitHub第三方资源库整理(OC篇)

随着GitHub star 的项目越来越多,而且之前也没有整理,所以找起来特别麻烦,于是就有了这篇文章,一是方便我自己查找,都作了分类,而且都作了标注,对应找起来容易得多;二是分享出来,资源...

2016/06/24 10:08
83
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部