我想将n
关联对象的数量设置为Swift中的对象
我的理解是UnsafeRawPointer
参考的通常模式如下:
static var reference = "someRef"
public func add(to myObject: AnyObject) {
let adding = ThingToAdd()
objc_setAssociatedObject(myObject, &reference, adding, .OBJC_ASSOCIATION_RETAIN_NONATOMIC)
}
但是对于n
到add(to:)
的呼叫数量,这将不起作用>
类似地,如果我每个myObject
只调用一次,则下面的代码可以正常工作。但是,如果我以相同的方式添加另一个关联对象...它将用第二个替换第一个ThingToAdd
。内联构建唯一的字符串不起作用。在模拟器上可以,但在设备上则不能。
public func add(to myObject: AnyObject) { let adding = ThingToAdd() var reference = "objectref\(UUID().uuidString)".replacingOccurrences(of: "-", with: "") objc_setAssociatedObject(myObject, reference, adding, .OBJC_ASSOCIATION_RETAIN_NONATOMIC) }
我知道这是不正确的,但是我不知道如何创建
n
号UnsafeRawPointers
来存储具有唯一引用的关联对象。
任何帮助/解释将不胜感激。
我想在Swift中为一个对象设置n个关联对象我的理解是UnsafeRawPointer引用的通常模式如下:static var reference =“ someRef” public ...