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);
}
本文介绍如何在 Objective-C 的分类中正确地添加和使用属性。具体包括在 .h 文件中声明属性的方式,以及如何通过运行时的方法来实现 set 和 get 方法,而不是直接使用合成的方法。
1787

被折叠的 条评论
为什么被折叠?



