相关疑难解决方法(0)

Swift 2.0复制OBJC_ASSOCIATION_RETAIN

我正在扩展Swift 2.0中的一些类来使用ReactiveCocoa 3.0(swift-2.0分支),但是遇到了一些麻烦.

我跟随了Colin Eberhardt的教程,并将他的部分UIKit扩展逻辑复制粘贴到我的OS X应用程序中.除了这个属性之外,它都编译得很好:UInt(OBJC_ASSOCIATION_RETAIN),这给了我以下编译器错误.

使用未解析的标识符

我怎样才能访问这个属性?我试过import ObjectiveC#import <objc/runtime.h>在头文件中,但似乎没有任何工作.

func lazyAssociatedProperty<T: AnyObject>(host: AnyObject, key: UnsafePointer<Void>, factory: ()->T) -> T {
    return objc_getAssociatedObject(host, key) as? T ?? {
        let associatedProperty = factory()

        objc_setAssociatedObject(host, key, associatedProperty, UInt(OBJC_ASSOCIATION_RETAIN)) // <-- Use of unresolved identifier
        return associatedProperty
    }()
}
Run Code Online (Sandbox Code Playgroud)

objective-c-runtime swift swift2

5
推荐指数
1
解决办法
2630
查看次数

标签 统计

objective-c-runtime ×1

swift ×1

swift2 ×1