1.对于自己需要扩展的类创建一个分类
2.首先在.h文件中 相同于普通.h 加入 @property(retain,nonatomic) NSString *a;
3.再给分类添加属性的set get 方法时不能采用以前的赋值方式如下:
- (NSString*)a{
return _a;
}
-(void)setA:(NSString*)a{
_a=a;
}
需要在外面申请一个静态地址 staticcharstr='a';
然后采用运行时的方法来给属性赋值,代码参考如下
- (NSString*)a{
return objc_getAssociatedObject(self, &strAddrNormalKey);
}
-(void)setA:(NSString*)a{
objc_setAssociatedObject(self, &strAddrNormalKey, normalColor,OBJC_ASSOCIATION_COPY_NONATOMIC);
}
网友评论