码迷,mamicode.com
首页 > 其他好文 > 详细

通过runtime对类别进行属性的扩展

时间:2016-02-29 09:22:33      阅读:130      评论:0      收藏:0      [点我收藏+]

标签:

category使用  objc_setAssociatedObject/objc_getAssociatedObject 实现添加属性

属性 其实就是 get/set 方法。

我们可以使用 objc_setAssociatedObject/objc_getAssociatedObject 实现添加属性实现 动态向类中添加 方法

@interfaceNSObject (CategoryWithProperty)

@property (nonatomic, strong) NSObject*property;

@end
@implementationNSObject (CategoryWithProperty)



- (NSObject *)property {

returnobjc_getAssociatedObject(self, @selector(property));

}

- (void)setProperty:(NSObject *)value {

objc_setAssociatedObject(self, @selector(property), value, OBJC_ASSOCIATION_RETAIN_NONATOMIC);

}

@end

通过runtime对类别进行属性的扩展

标签:

原文地址:http://www.cnblogs.com/W-Kr/p/5226312.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!