您好,登录后才能下订单哦!
我们知道 在iOS中cagetory里面只能添加方法 ,如果我们想添加属性 就要用到
<objc/runtime.h>
中
OBJC_EXPORT void objc_setAssociatedObject(idobject, constvoid *key, id value, objc_AssociationPolicy policy)
__OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_1);
OBJC_EXPORT id objc_getAssociatedObject(idobject, constvoid *key)
__OSX_AVAILABLE_STARTING(__MAC_10_6, __IPHONE_3_1);
例如
@interface UIButton(custom)
@property (nonatomic, copy) NSIndexPath *selectIndexPath;
@end
staticNSIndexPath *k_SelectIndexPath;
@implementation UIButton(custom)
@dynamic selectIndexPath;
- (void)setSelectIndexPath:(NSIndexPath *)selectIndexPath
{
objc_setAssociatedObject(self, &k_SelectIndexPath, selectIndexPath, OBJC_ASSOCIATION_COPY);
}
- (NSIndexPath*)selectIndexPath
{
returnobjc_getAssociatedObject(self, &k_SelectIndexPath);
}
@end
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。