一个Swift库,用于将对象作为属性与引用类型的对象关联起来。
它的工作方式与 objc_getAssociatedObject
/objc_setAssociatedObject
相同。但是,这个库也可以在Linux平台以及其他不运行 Objective-C 运行时的平台上使用。
基本用法与 objc_getAssociatedObject
/objc_setAssociatedObject
相同。但没有策略设置。
class ClassItem {
enum Keys {
static var value: UInt8 = 0
}
var value: String? {
get {
getAssociatedObject(
self,
&ClassItem.Keys.value
) as? String
}
set {
setAssociatedObject(
self,
&ClassItem.Keys.value,
newValue
)
}
}
}
removeAssociatedObjects(self)