OBJC_ASSOCIATION_COPY。
enum {
OBJC_ASSOCIATION_ASSIGN = 0, //關(guān)聯(lián)對(duì)象的屬性是弱引用(weak)
OBJC_ASSOCIATION_RETAIN_NONATOMIC = 1, //關(guān)聯(lián)對(duì)象的屬性是強(qiáng)引用并且關(guān)聯(lián)對(duì)象不使用原子性(strong,nonatomic)
OBJC_ASSOCIATION_COPY_NONATOMIC = 3, //關(guān)聯(lián)對(duì)象的屬性是copy并且關(guān)聯(lián)對(duì)象不使用原子性(copy,nonatomic)
OBJC_ASSOCIATION_RETAIN = 01401, //關(guān)聯(lián)對(duì)象的屬性是copy并且關(guān)聯(lián)對(duì)象使用原子性
(copy,atomic)
OBJC_ASSOCIATION_COPY = 01403 //關(guān)聯(lián)對(duì)象的屬性是copy并且關(guān)聯(lián)對(duì)象使用原子性
};(copy,atomic)
代碼如下就可以了
- (NSString *)tag {
return objc_getAssociatedObject(self, &tagKey);
}
- (void)setTag:(NSString *)tag {
objc_setAssociatedObject(self,& tagKey, tag, OBJC_ASSOCIATION_COPY);
}