测试已测试 | ✗ |
Lang语言 | Obj-CObjective C |
许可证 | 自定义 |
发布最后发布 | 2014年12月 |
由Krzysztof Zablocki,Krzysztof Zabłocki维护。
SFObservers 是一个类别扩展,它为 NSNotificationCenter 和 KVO 添加了自动移除观察者的功能。通过将此库集成到您的项目中,您不再需要手动在观察者对象释放时移除观察者。默认情况下,它还可以防止多次添加相同的观察者-参数对,您可以通过在 SFObservers.h 中将 SF_OBSERVERS_ALLOW_MULTIPLE_REGISTRATIONS 设置为 1 来禁用此功能。
SFObservers 通过条件编译自动与 ARC 和非 ARC 项目一起工作。不需要排除 SFObserver 文件从 ARC 验证过程,也不需要使用 ARC 转换工具转换 SFObservers。
要使用您应用中的 SFObserver,只需将类文件(示例文件和资源不需要)拖放到您的项目中。然后,将 SFObservers.h 包含到您的项目 Prefix.pch 文件中。无需调用自定义方法,您可以将其包含到现有项目中,并且它将正常工作。如果您想允许添加相同的观察者-参数对,请在 SFObservers.h 中将 SF_OBSERVERS_ALLOW_MULTIPLE_REGISTRATIONS 设置为 1。
仓库包含 2 个具有一些单元测试的示例项目,一个是使用 ARC 的项目,另一个不是。您还可以将 SF_OBSERVERS_LOG_ORIGINAL_METHODS 的值更改为 1,如果您希望记录被调用的原始方法。