KVOController-Swift 2.0.1

KVOController-Swift 2.0.1

测试已测试
语言语言 SwiftSwift
许可 MIT
发布最后发布2016年10月
SPM支持SPM

Mohamed Afifi维护。



KVOController-Swift

支持Swift 3.0

您是否想过在Swift中实现通用的键值观察(KVO)?这可以让您的生活更轻松,并节省很多类型转换。本项目受到了facebook/KVOController的启发。因此,它不仅提供了一个干净的KVO API,而且利用了Swift的泛型功能。

要求

  • iOS 7.0+ / Mac OS X 10.9+
  • Xcode 8
  • Swift 3.0

用法

简单用法

observe(retainedObservable: clock, keyPath: "date", options: .New | .Initial)
    { [weak self] (observable: Clock, change: ChangeData<NSDate>) -> () in

        if let date = change.newValue {
            self?.timeLabel.text = formatter.stringFromDate(date)
        }
}

注意,您必须给出改变属性的通配符类型。在我们的例子中,属性是NSDate,因此改变是类型ChangeData

您可以使用自动取消观察的行为,或者如果您确实想取消观察,只需调用

  unobserve(clock, keyPath: "date")

安装

KVOController-Swift可以通过CocoaPods获得。要安装它,请将以下行添加到您的Podfile中:

pod "KVOController-Swift"

对于iOS 7.x

内置框架需要iOS 8或更高版本的最低部署目标。

如果您正在使用针对iOS 7的项目使用KVOController-Swift,您必须直接将KVOController.swift包含到您的项目中。

作者

Mohamed Afifi,[email protected]

许可

KVOController-Swift在MIT许可下提供。有关更多信息,请参阅LICENSE文件。